local status i branch
local ret=0
local sav_pwd=${PWD:-$(pwd)}
- for i in $(nb_repos); do
- cd "$i" || continue
-
- for branch in $(git branch | sed -E 's/^[\* ]+//'); do
- status=$(git status --short --branch "$branch"|grep -v '^#'|sed 's/^/ /') || continue
- [ -n "$status" ] && status=$'\n'"$status" && ret=1
- printf "%s %s\n" "$i [$branch]" "$status"
- done
-
+ for i in ${@:-$(nb_repos)}; do
+ cd "$i" || continue
+ local branch_orig=$(git branch | awk '/^\*/{print $2}')
+ [ -z "$branch_orig" ] && continue
+
+ for branch in $(git branch | sed -E 's/^[\* ]+//'); do
+# NB 31.08.19 TODEL need checkout status=$(git status --short --branch "$branch"|grep -v '^#'|sed 's/^/ /') || continue
+ git checkout --quiet "$branch" || continue
+ status=$(git status --short | grep -v '^#'|sed 's/^/ /') || continue
+ [ -n "$status" ] && status=$'\n'"$status" && ret=1
+ printf "%s %s\n" "$i [$branch]" "$status"
+ done
+
+ git checkout --quiet "$branch_orig"
done
cd "$sav_pwd"
return $ret