X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=blobdiff_plain;f=tg.sh;h=4fef7796c53e59bc5829ca3a727c65a58e4eb3ab;hb=897a2bd3fdb31a1372ac3f522befa2d5a5f7c07a;hp=905fccf4e0fa0e5753d95d3cc477434d7f85f53c;hpb=734f191e0f805ae9087b2ec81a941192a0e01bae;p=topgit.git diff --git a/tg.sh b/tg.sh index 905fccf..4fef779 100644 --- a/tg.sh +++ b/tg.sh @@ -60,11 +60,11 @@ setup_ours() # measure_branch NAME [BASE] measure_branch() { - _name="$1"; _base="$2" - [ -n "$_base" ] || _base="refs/top-bases/$_name" + _bname="$1"; _base="$2" + [ -n "$_base" ] || _base="refs/top-bases/$_bname" # The caller should've verified $name is valid - _commits="$(git rev-list "$_name" ^"$_base" | wc -l)" - _nmcommits="$(git rev-list --no-merges "$_name" ^"$_base" | wc -l)" + _commits="$(git rev-list "$_bname" ^"$_base" | wc -l)" + _nmcommits="$(git rev-list --no-merges "$_bname" ^"$_base" | wc -l)" if [ $_commits -gt 1 ]; then _suffix="commits" else @@ -95,8 +95,8 @@ recurse_deps() _cmd="$1"; shift _name="$1"; # no shift _depchain="$*" - depsfile="$(mktemp)" - git cat-file blob "$_name:.topdeps" >"$depsfile" + _depsfile="$(mktemp)" + git cat-file blob "$_name:.topdeps" >"$_depsfile" _ret=0 while read _dep; do if ! git rev-parse --verify "$_dep" >/dev/null 2>&1; then @@ -111,13 +111,13 @@ recurse_deps() # Shoo shoo, keep our environment alone! [ -z "$_dep_is_tgish" ] || - (needs_update "$_cmd" "$_dep" "$@") || + (recurse_deps "$_cmd" "$_dep" "$@") || _ret=$? eval "$_cmd" - done <"$depsfile" + done <"$_depsfile" missing_deps="${missing_deps# }" - rm "$depsfile" + rm "$_depsfile" return $_ret } @@ -139,7 +139,7 @@ branch_needs_update() # _dep needs to be synced with its base echo ": $_dep $_depchain" _ret=1 - elif ! branch_contains "refs/top-bases/$1" "$_dep"; then + elif ! branch_contains "refs/top-bases/$_name" "$_dep"; then # Some new commits in _dep echo "$_dep $_depchain" _ret=1