-git for-each-ref refs/heads | cut -f 2 |
- while read ref; do
- name="${ref#refs/heads/}"
- base_rev="$(git rev-parse --verify "refs/top-bases/$name" 2>/dev/null)" ||
- continue # not a TopGit branch
+git for-each-ref refs/top-bases |
+ while read rev type ref; do
+ name="${ref#refs/top-bases/}"
+ if branch_annihilated "$name"; then
+ continue;
+ fi;
+
+ if [ -n "$terse" ]; then
+ echo "$name"
+ continue
+ fi
+ if [ -n "$graphviz$sort$deps" ]; then
+ git cat-file blob "$name:.topdeps" | while read dep; do
+ dep_is_tgish=true
+ ref_exists "refs/top-bases/$dep" ||
+ dep_is_tgish=false
+ if ! "$dep_is_tgish" || ! branch_annihilated $dep; then
+ if [ -n "$graphviz" ]; then
+ echo "\"$name\" -> \"$dep\";"
+ elif [ -n "$deps" ]; then
+ echo "$name $dep"
+ else
+ echo "$name $dep" >&4
+ fi
+ fi
+ done
+ continue
+ fi
+
+ missing_deps=