From 657ae9e6541ea432ef969fdb96f5c9c4597530c7 Mon Sep 17 00:00:00 2001 From: "martin f. krafft" Date: Thu, 20 Nov 2008 10:56:33 +0100 Subject: [PATCH] refactor --- tg-export.sh | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/tg-export.sh b/tg-export.sh index 037b991..8e98f46 100644 --- a/tg-export.sh +++ b/tg-export.sh @@ -39,7 +39,13 @@ if [ -z "$branches" ]; then name="$(git symbolic-ref HEAD | sed 's#^refs/heads/##')" base_rev="$(git rev-parse --short --verify "refs/top-bases/$name" 2>/dev/null)" || die "not on a TopGit-controlled branch" + branches="$name" +else + name="${branches##*,}" # the last of the comma-separated items fi +# $name holds the current branch +# $branches holds the comma-separated list of branches +# $name is equal to the last of the list of branches playground="$(mktemp -d -t tg-export.XXXXXX)" @@ -62,7 +68,7 @@ pretty_tree() # Produce a collapsed commit of branch NAME. collapsed_commit() { - name="$1" + local name; name="$1" rm -f "$playground/^pre" "$playground/^post" >"$playground/^body" @@ -177,17 +183,10 @@ driver() # Call driver on all the branches - this will happen # in topological order. -if [ -z "$branches" ]; then +echo "$branches" | tr , '\n' | while read name; do recurse_deps driver "$name" (_ret=0; _dep="$name"; _name=""; _dep_is_tgish=1; driver) -else - echo "$branches" | tr ',' '\n' | while read name; do - recurse_deps driver "$name" - (_ret=0; _dep="$name"; _name=""; _dep_is_tgish=1; driver) - done - name="$(echo "$branches" | sed 's/.*,//')" -fi - +done if [ "$driver" = "collapse" ]; then git update-ref "refs/heads/$output" "$(cat "$playground/$name")" "" -- 2.30.2