X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ian/git?a=blobdiff_plain;f=tg-export.sh;h=52af88dfd14e891627b145f63702b1212155a82c;hb=e7edf784472f7a3b0d16db10e7d3e1253a227b97;hp=a7c459a17f37c14696edfba30e121ce3ca10996e;hpb=bcfb4454104f30eea9eb24a658638ba2684863b7;p=topgit.git diff --git a/tg-export.sh b/tg-export.sh index a7c459a..52af88d 100644 --- a/tg-export.sh +++ b/tg-export.sh @@ -21,7 +21,7 @@ while [ -n "$1" ]; do --collapse) driver=collapse;; -*) - echo "Usage: tg [...] export [-b BRANCH1,BRANCH2...] ([--collapse] NEWBRANCH | --quilt DIRECTORY)" >&2 + echo "Usage: tg [...] export ([--collapse] NEWBRANCH | [-b BRANCH1,BRANCH2...] --quilt DIRECTORY)" >&2 exit 1;; *) [ -z "$output" ] || die "output already specified ($output)" @@ -30,13 +30,17 @@ while [ -n "$1" ]; do done -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" [ -z "$branches" -o "$driver" = "quilt" ] || die "-b works only with the quilt driver" +if [ -z "$branches" ]; then + # this check is only needed when no branches have been passed + 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" +fi + playground="$(mktemp -d -t tg-export.XXXXXX)" trap 'rm -rf "$playground"' EXIT