Merge branch 'hold/am'
authorJunio C Hamano <junkio@cox.net>
Wed, 14 Dec 2005 21:04:43 +0000 (13:04 -0800)
committerJunio C Hamano <junkio@cox.net>
Wed, 14 Dec 2005 21:04:43 +0000 (13:04 -0800)
30 files changed:
Documentation/howto/using-topic-branches.txt
git-add.sh
git-am.sh
git-applymbox.sh
git-applypatch.sh
git-bisect.sh
git-branch.sh
git-checkout.sh
git-cherry.sh
git-clone.sh
git-commit.sh
git-fetch.sh
git-format-patch.sh
git-grep.sh
git-lost-found.sh
git-merge.sh
git-prune.sh
git-pull.sh
git-push.sh
git-rebase.sh
git-repack.sh
git-request-pull.sh
git-reset.sh
git-resolve.sh
git-revert.sh
git-sh-setup.sh
git-status.sh
git-tag.sh
git-verify-tag.sh
t/t3200-branch.sh
index 4698abe46bff0b878dcfcd05771f5760483b4278..494429738f8f86bbe21f38b5f90cc94344ad0630 100644 (file)
@@ -31,7 +31,7 @@ test tree and then pull to the release tree as that would leave trivial
 patches blocked in the test tree waiting for complex changes to accumulate
 enough test time to graduate.
 
-Back in the BitKeeper days I achieved this my creating small forests of
+Back in the BitKeeper days I achieved this by creating small forests of
 temporary trees, one tree for each logical grouping of patches, and then
 pulling changes from these trees first to the test tree, and then to the
 release tree.  At first I replicated this in GIT, but then I realised
@@ -42,7 +42,8 @@ So here is the step-by-step guide how this all works for me.
 
 First create your work tree by cloning Linus's public tree:
 
- $ git clone rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git work
+ $ git clone \
+ master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6.git work
 
 Change directory into the cloned tree you just created
 
@@ -52,7 +53,7 @@ Set up a remotes file so that you can fetch the latest from Linus' master
 branch into a local branch named "linus":
 
  $ cat > .git/remotes/linus
- URL: rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
+ URL: master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
  Pull: master:linus
  ^D
 
index fdec86d1a41af847f9d737a2c058e2d2027f32fe..f719b4b1a81a386c9cf62efad811005471be0f8c 100755 (executable)
@@ -1,13 +1,8 @@
 #!/bin/sh
 
-die () {
-    echo >&2 "$*"
-    exit 1
-}
-
-usage() {
-    die "usage: git add [-n] [-v] <file>..."
-}
+USAGE='[-n] [-v] <file>...'
+SUBDIRECTORY_OK='Yes'
+. git-sh-setup
 
 show_only=
 verbose=
@@ -29,8 +24,6 @@ while : ; do
   shift
 done
 
-GIT_DIR=$(git-rev-parse --git-dir) || exit
-
 if test -f "$GIT_DIR/info/exclude"
 then
        git-ls-files -z \
index f143b7e782ce3b7cc7043c2d00e6cdcc10741bfe..343bee9d81e53106226f6f32a75860119ece92cb 100755 (executable)
--- a/git-am.sh
+++ b/git-am.sh
@@ -1,14 +1,10 @@
 #!/bin/sh
 #
 #
-. git-sh-setup
 
-usage () {
-    echo >&2 "usage: $0 [--signoff] [--dotest=<dir>] [--utf8] [--binary] [--3way] <mbox>"
-    echo >&2 " or, when resuming"
-    echo >&2 " $0 [--skip | --resolved]"
-    exit 1;
-}
+USAGE='[--signoff] [--dotest=<dir>] [--utf8] [--binary] [--3way] <mbox>
+  or, when resuming [--skip | --resolved]'
+. git-sh-setup
 
 stop_here () {
     echo "$1" >"$dotest/next"
index c686cc8d27a64998c141cca2989375910601f90f..61c8c024c60935b4766b5052461b4c73918a69ec 100755 (executable)
 ##
 ## git-am is supposed to be the newer and better tool for this job.
 
+USAGE='[-u] [-k] [-q] [-m] (-c .dotest/<num> | mbox) [signoff]'
 . git-sh-setup
 
-usage () {
-    echo >&2 "applymbox [-u] [-k] [-q] [-m] (-c .dotest/<num> | mbox) [signoff]"
-    exit 1
-}
-
 keep_subject= query_apply= continue= utf8= resume=t
 while case "$#" in 0) break ;; esac
 do
index a112e1a50405c733e9e94c610caf36a7b07297dd..e8ba34a0ad4a466083c8462cc038de9d8ad6a4ab 100755 (executable)
 ##     $3 - "info" file with Author, email and subject
 ##     $4 - optional file containing signoff to add
 ##
+
+USAGE='<msg> <patch> <info> [<signoff>]'
 . git-sh-setup
 
+case "$#" in 3|4) usage ;; esac
+
 final=.dotest/final-commit
 ##
 ## If this file exists, we ask before applying
index 05dae8ad13fc7b3a0aa694d038e12845146a0a27..51e1e4417d95530612d3ce5db64c8295c9236f53 100755 (executable)
@@ -1,4 +1,15 @@
 #!/bin/sh
+
+USAGE='[start|bad|good|next|reset|visualize]'
+LONG_USAGE='git bisect start [<pathspec>]      reset bisect state and start bisection.
+git bisect bad [<rev>]         mark <rev> a known-bad revision.
+git bisect good [<rev>...]     mark <rev>... known-good revisions.
+git bisect next                        find next bisection to test and check it out.
+git bisect reset [<branch>]    finish bisection search and go back to branch.
+git bisect visualize            show bisect status in gitk.
+git bisect replay <logfile>    replay bisection log
+git bisect log                 show bisect log.'
+
 . git-sh-setup
 
 sq() {
@@ -11,19 +22,6 @@ sq() {
        ' "$@"
 }
 
-usage() {
-    echo >&2 'usage: git bisect [start|bad|good|next|reset|visualize]
-git bisect start [<pathspec>]  reset bisect state and start bisection.
-git bisect bad [<rev>]         mark <rev> a known-bad revision.
-git bisect good [<rev>...]     mark <rev>... known-good revisions.
-git bisect next                        find next bisection to test and check it out.
-git bisect reset [<branch>]    finish bisection search and go back to branch.
-git bisect visualize            show bisect status in gitk.
-git bisect replay <logfile>    replay bisection log
-git bisect log                 show bisect log.'
-    exit 1
-}
-
 bisect_autostart() {
        test -d "$GIT_DIR/refs/bisect" || {
                echo >&2 'You need to start by "git bisect start"'
index 5306b2719ffbedfa077f4d5489ab46448ef5c186..0266f46223c2f20973bbbcb78f4825ff880d9bd3 100755 (executable)
@@ -1,21 +1,12 @@
 #!/bin/sh
 
-GIT_DIR=`git-rev-parse --git-dir` || exit $?
-
-die () {
-    echo >&2 "$*"
-    exit 1
-}
-
-usage () {
-    echo >&2 "usage: $(basename $0)"' [-d <branch>] | [[-f] <branch> [start-point]]
-
-If no arguments, show available branches and mark current branch with a star.
+USAGE='[-d <branch>] | [[-f] <branch> [start-point]]'
+LONG_USAGE='If no arguments, show available branches and mark current branch with a star.
 If one argument, create a new branch <branchname> based off of current HEAD.
-If two arguments, create a new branch <branchname> based off of <start-point>.
-'
-    exit 1
-}
+If two arguments, create a new branch <branchname> based off of <start-point>.'
+
+SUBDIRECTORY_OK='Yes'
+. git-sh-setup
 
 headref=$(git-symbolic-ref HEAD | sed -e 's|^refs/heads/||')
 
index 4cf30e2c0529e90886e6edfd485cec67a278e224..f241d4ba6ba5a988f801e3307022d188204ff572 100755 (executable)
@@ -1,9 +1,7 @@
 #!/bin/sh
-. git-sh-setup
 
-usage () {
-    die "usage: git checkout [-f] [-b <new_branch>] [<branch>] [<paths>...]"
-}
+USAGE='[-f] [-b <new_branch>] [<branch>] [<paths>...]'
+. git-sh-setup
 
 old=$(git-rev-parse HEAD)
 new=
index 867522b37ff4fd85f963019a025ba07789ffef37..5e9bd0caf2e1141e3045ea6c3a1f0e9d9285c492 100755 (executable)
@@ -3,11 +3,8 @@
 # Copyright (c) 2005 Junio C Hamano.
 #
 
-. git-sh-setup
-
-usage="usage: $0 "'[-v] <upstream> [<head>]
-
-             __*__*__*__*__> <upstream>
+USAGE='[-v] <upstream> [<head>]'
+LONG_USAGE='             __*__*__*__*__> <upstream>
             /
   fork-point
             \__+__+__+__+__+__+__+__> <head>
@@ -16,8 +13,8 @@ Each commit between the fork-point and <head> is examined, and
 compared against the change each commit between the fork-point and
 <upstream> introduces.  If the change seems to be in the upstream,
 it is shown on the standard output with prefix "+".  Otherwise
-it is shown with prefix "-".
-'
+it is shown with prefix "-".'
+. git-sh-setup
 
 case "$1" in -v) verbose=t; shift ;; esac 
 
@@ -35,7 +32,7 @@ case "$#" in
 2) upstream=`git-rev-parse --verify "$1"` &&
    ours=`git-rev-parse --verify "$2"` || exit
    ;;
-*) echo >&2 "$usage"; exit 1 ;;
+*) usage ;;
 esac
 
 # Note that these list commits in reverse order;
index e49028f684ffe2fd50012759f54475f0db7b4d68..280cc2e81e98c5fe69e8528ca97069dd0b0e59f5 100755 (executable)
@@ -9,7 +9,7 @@
 unset CDPATH
 
 usage() {
-       echo >&2 "* git clone [-l [-s]] [-q] [-u <upload-pack>] [-n] <repo> [<dir>]"
+       echo >&2 "Usage: $0 [-l [-s]] [-q] [-u <upload-pack>] [-n] <repo> [<dir>]"
        exit 1
 }
 
index 3d250ec853dad3ff7e714025026ca90f2c77e7bb..7e39c107cff93f601c51fec6544a0defe9814db1 100755 (executable)
@@ -3,12 +3,9 @@
 # Copyright (c) 2005 Linus Torvalds
 #
 
+USAGE='[-a] [-s] [-v | --no-verify]  [-m <message> | -F <logfile> | (-C|-c) <commit>] [-e] [<path>...]'
 . git-sh-setup
 
-usage () {
-       die 'git commit [-a] [-s] [-v | --no-verify]  [-m <message> | -F <logfile> | (-C|-c) <commit>] [-e] [<path>...]'
-}
-
 all= logfile= use_commit= no_edit= log_given= log_message= verify=t signoff=
 while case "$#" in 0) break;; esac
 do
index 14ea295113be9381ce9d4af52f022ce99c75506f..767ca61ca6362b086e70b05f3442fcb4ad475c6a 100755 (executable)
@@ -1,5 +1,7 @@
 #!/bin/sh
 #
+
+USAGE='<fetch-options> <repository> <refspec>...'
 . git-sh-setup
 . git-parse-remote
 _x40='[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]'
@@ -34,6 +36,9 @@ do
        -v|--verbose)
                verbose=Yes
                ;;
+       -*)
+               usage
+               ;;
        *)
                break
                ;;
index 921feee59cd7e770328fc1d167e01730a238489e..01508e3b04f91bba3e960eb74eaff3e349e209bd 100755 (executable)
@@ -3,19 +3,8 @@
 # Copyright (c) 2005 Junio C Hamano
 #
 
-. git-sh-setup
-
-# Force diff to run in C locale.
-LANG=C LC_ALL=C
-export LANG LC_ALL
-
-usage () {
-    echo >&2 "usage: $0"' [-n] [-o dir | --stdout] [--keep-subject] [--mbox]
-    [--check] [--signoff] [-<diff options>...]
-    [--help]
-    ( from..to ... | upstream [ our-head ] )
-
-Prepare each commit with its patch since our-head forked from upstream,
+USAGE='[-n | -k] [-o <dir> | --stdout] [--signoff] [--check] [--mbox] [--diff-options] <upstream> [<our-head>]'
+LONG_USAGE='Prepare each commit with its patch since our-head forked from upstream,
 one file per patch, for e-mail submission.  Each output file is
 numbered sequentially from 1, and uses the first line of the commit
 message (massaged for pathname safety) as the filename.
@@ -28,10 +17,12 @@ as "[PATCH N/M] Subject", unless you have only one patch.
 
 When --mbox is specified, the output is formatted to resemble
 UNIX mailbox format, and can be concatenated together for processing
-with applymbox.
-'
-    exit 1
-}
+with applymbox.'
+. git-sh-setup
+
+# Force diff to run in C locale.
+LANG=C LC_ALL=C
+export LANG LC_ALL
 
 diff_opts=
 LF='
index 44c16130bd93fea8b6f172f1614115801f8df2d9..2ed8e955d6c44da7bd15342aac64de997f0f4bf4 100755 (executable)
@@ -3,6 +3,10 @@
 # Copyright (c) Linus Torvalds, 2005
 #
 
+USAGE='<option>... <pattern> <path>...'
+SUBDIRECTORY_OK='Yes'
+. git-sh-setup
+
 pattern=
 flags=()
 git_flags=()
@@ -40,8 +44,7 @@ while : ; do
        shift
 done
 [ "$pattern" ] || {
-       echo >&2 "usage: 'git grep <pattern> [pathspec*]'"
-       exit 1
+       usage
 }
 git-ls-files -z "${git_flags[@]}" "$@" |
        xargs -0 grep "${flags[@]}" -e "$pattern"
index 2beec2aa635d2876482294a162923a1dfd1572f6..ba6d587f3199e5847dc942810ea85b2dbec656b9 100755 (executable)
@@ -1,6 +1,14 @@
 #!/bin/sh
 
-GIT_DIR=`git-rev-parse --git-dir` || exit $?
+USAGE=''
+SUBDIRECTORY_OK='Yes'
+. git-sh-setup
+
+if [ "$#" != "0" ]
+then
+    usage
+fi
+
 laf="$GIT_DIR/lost-found"
 rm -fr "$laf" && mkdir -p "$laf/commit" "$laf/other" || exit
 
index d25ae4b82d4208216bb7ce5b5d414ee8b2797865..e50fbb1160ad6ccfebc0d65fcc54bc3488e597cd 100755 (executable)
@@ -3,15 +3,13 @@
 # Copyright (c) 2005 Junio C Hamano
 #
 
+
+USAGE='[-n] [--no-commit] [-s <strategy>]... <merge-message> <head> <remote>+'
 . git-sh-setup
 
 LF='
 '
 
-usage () {
-    die "git-merge [-n] [--no-commit] [-s <strategy>]... <merge-message> <head> <remote>+"
-}
-
 all_strategies='recursive octopus resolve stupid ours'
 default_strategies='recursive'
 use_strategies=
index 7e7f0ad56d381dc546f1bc598e41c1d7fa1e3a36..7b61d05c4b58c57c833563955e3206f0e4142c39 100755 (executable)
@@ -1,5 +1,6 @@
 #!/bin/sh
 
+USAGE='[-n] [--] [<head>...]'
 . git-sh-setup
 
 dryrun=
@@ -9,7 +10,7 @@ do
     case "$1" in
     -n) dryrun=-n echo=echo ;;
     --) break ;;
-    -*) echo >&2 "usage: git-prune [ -n ] [ heads... ]"; exit 1 ;;
+    -*) usage ;;
     *)  break ;;
     esac
     shift;
index 3a139849fbfc545b7c479dd2889a0285fab646d5..0991d5f14cd6d903572a041cfbfe3cde219c738f 100755 (executable)
@@ -4,19 +4,10 @@
 #
 # Fetch one or more remote refs and merge it/them into the current HEAD.
 
+USAGE='[-n | --no-summary] [--no-commit] [-s strategy]... [<fetch-options>] <repo> <head>...'
+LONG_USAGE='Fetch one or more remote refs and merge it/them into the current HEAD.'
 . git-sh-setup
 
-usage () {
-    echo >&2 "usage: $0"' [-n] [--no-commit] [--no-summary] [--help]
-    [-s strategy]...
-    [<fetch-options>]
-    <repo> <head>...
-
-Fetch one or more remote refs and merge it/them into the current HEAD.
-'
-    exit 1
-}
-
 strategy_args= no_summary= no_commit=
 while case "$#,$1" in 0) break ;; *,-*) ;; *) break ;; esac
 do
index 140c8f85d55c5654cfc9077fecfd03ad067a6862..1c5cf80f8786eb20c6092a8fbce48e1f1c1cb9e1 100755 (executable)
@@ -1,10 +1,7 @@
 #!/bin/sh
-. git-sh-setup
-
-usage () {
-    die "Usage: git push [--all] [--force] <repository> [<refspec>]"
-}
 
+USAGE='[--all] [--force] <repository> [<refspec>...]'
+. git-sh-setup
 
 # Parse out parameters and then stop at remote, so that we can
 # translate it using .git/branches information
index 638ff0dbc01cbf87edf1af511d5caac5ee4f1d66..c1619ff1400f68300d5026a00baf72e27f268ba1 100755 (executable)
@@ -3,8 +3,11 @@
 # Copyright (c) 2005 Junio C Hamano.
 #
 
+USAGE='<upstream> [<head>]'
 . git-sh-setup
 
+case $# in 1|2) ;; *) usage ;; esac
+
 # Make sure we do not have .dotest
 if mkdir .dotest
 then
@@ -19,7 +22,7 @@ you still have something valuable there.'
 fi
 
 # The other head is given.  Make sure it is valid.
-other=$(git-rev-parse --verify "$1^0") || exit
+other=$(git-rev-parse --verify "$1^0") || usage
 
 # Make sure we have HEAD that is valid.
 head=$(git-rev-parse --verify "HEAD^0") || exit
@@ -36,7 +39,8 @@ esac
 # If the branch to rebase is given, first switch to it.
 case "$#" in
 2)
-       git-checkout "$2" || exit
+       head=$(git-rev-parse --verify "$2^") || usage
+       git-checkout "$2" || usage
 esac
 
 # If the HEAD is a proper descendant of $other, we do not even need
index 430ddc5a706945035149464d0bea8f25acc21d3c..1fafb6ecf6ffbac817865470ec923af203da8e7e 100755 (executable)
@@ -3,6 +3,7 @@
 # Copyright (c) 2005 Linus Torvalds
 #
 
+USAGE='[-a] [-d] [-l] [-n]'
 . git-sh-setup
        
 no_update_info= all_into_one= remove_redundant= local=
@@ -13,7 +14,7 @@ do
        -a)     all_into_one=t ;;
        -d)     remove_redundant=t ;;
        -l)     local=t ;;
-       *)      break ;;
+       *)      usage ;;
        esac
        shift
 done
index ae6cd272bab01ba7fa9ac7378fe33e07e853d307..2c48bfb299325ba7a27e883b6a4815ebde09ae58 100755 (executable)
@@ -4,13 +4,11 @@
 # This file is licensed under the GPL v2, or a later version
 # at the discretion of Linus Torvalds.
 
-usage()
-{
-       echo "$0 <commit> <url> [ <head> ]"
-       echo "  Summarizes the changes since <commit> to the standard output,"
-       echo "  and includes <url> in the message generated."
-       exit 1
-}
+USAGE='<commit> <url> [<head>]'
+LONG_USAGE='Summarizes the changes since <commit> to the standard output,
+and includes <url> in the message generated.'
+SUBDIRECTORY_OK='Yes'
+. git-sh-setup
 
 revision=$1
 url=$2
index 72ef303aedc69a1d9cdd946a91059638cb2e550a..eb44ee8cc197b7ff11159cf046b790cf693d3a72 100755 (executable)
@@ -1,9 +1,7 @@
 #!/bin/sh
-. git-sh-setup
 
-usage () {
-       die 'Usage: git reset [--mixed | --soft | --hard]  [<commit-ish>]'
-}
+USAGE='[--mixed | --soft | --hard]  [<commit-ish>]'
+. git-sh-setup
 
 tmp=/var/tmp/reset.$$
 trap 'rm -f $tmp-*' 0 1 2 3 15
index fcc5ad7349e3f77a6817e499b331b262c4a07b57..926307005493b7c8c4253b1adff34bdb4bc57b77 100755 (executable)
@@ -4,11 +4,9 @@
 #
 # Resolve two trees.
 #
-. git-sh-setup
 
-usage () {
-       die "git-resolve <head> <remote> <merge-message>"
-}
+USAGE='<head> <remote> <merge-message>'
+. git-sh-setup
 
 dropheads() {
        rm -f -- "$GIT_DIR/MERGE_HEAD" \
index 9d499c4807e7e583e960232d93624303554e8b81..63d201be1bf810499cfeb7aecbc23ec15e171bb7 100755 (executable)
@@ -3,29 +3,20 @@
 # Copyright (c) 2005 Linus Torvalds
 # Copyright (c) 2005 Junio C Hamano
 #
-. git-sh-setup
 
 case "$0" in
 *-revert* )
        test -t 0 && edit=-e
-       me=revert ;;
+       me=revert
+       USAGE='[--edit | --no-edit] [-n] <commit-ish>' ;;
 *-cherry-pick* )
        edit=
-       me=cherry-pick ;;
+       me=cherry-pick
+       USAGE='[--edit] [-n] [-r] <commit-ish>'  ;;
 * )
        die "What are you talking about?" ;;
 esac
-
-usage () {
-       case "$me" in
-       cherry-pick)
-               die "usage git $me [--edit] [-n] [-r] <commit-ish>"
-               ;;
-       revert)
-               die "usage git $me [--edit | --no-edit] [-n] <commit-ish>"
-               ;;
-       esac
-}
+. git-sh-setup
 
 no_commit= replay=
 while case "$#" in 0) break ;; esac
index b4f10224baf8328a9d6efa761b025450df414bb2..1e638e493d51c9216e3d2e93aad5657cdf9793b4 100755 (executable)
 # exporting it.
 unset CDPATH
 
-: ${GIT_DIR=.git}
-: ${GIT_OBJECT_DIRECTORY="$GIT_DIR/objects"}
-
 die() {
        echo >&2 "$@"
        exit 1
 }
 
-# Make sure we are in a valid repository of a vintage we understand.
-GIT_DIR="$GIT_DIR" git-var GIT_AUTHOR_IDENT >/dev/null || exit
+usage() {
+       die "Usage: $0 $USAGE"
+}
+
+if [ -z "$LONG_USAGE" ]
+then
+       LONG_USAGE="Usage: $0 $USAGE"
+else
+       LONG_USAGE="Usage: $0 $USAGE
+
+$LONG_USAGE"
+fi
+
+case "$1" in
+       --h|--he|--hel|--help)
+       echo "$LONG_USAGE"
+       exit
+esac
+
+if [ -z "$SUBDIRECTORY_OK" ]
+then
+       : ${GIT_DIR=.git}
+       : ${GIT_OBJECT_DIRECTORY="$GIT_DIR/objects"}
+
+       # Make sure we are in a valid repository of a vintage we understand.
+       GIT_DIR="$GIT_DIR" git-var GIT_AUTHOR_IDENT >/dev/null || exit
+else
+       GIT_DIR=$(git-rev-parse --git-dir) || exit
+fi
index 2dda0c505cf41c9dbd9fc6db75f3c0550f6ee82f..50ccd24efb707d615e560dfbd38abec5b2b25b20 100755 (executable)
@@ -2,7 +2,16 @@
 #
 # Copyright (c) 2005 Linus Torvalds
 #
-GIT_DIR=$(git-rev-parse --git-dir) || exit
+
+USAGE=''
+SUBDIRECTORY_OK='Yes'
+
+. git-sh-setup
+
+if [ "$#" != "0" ]
+then
+  usage
+fi
 
 report () {
   header="#
index 2435a75f7a9414bdceb1cef308a99918784f5421..6d0c973239a1b72bbef43aa430f1ee534b7ab458 100755 (executable)
@@ -1,17 +1,9 @@
 #!/bin/sh
 # Copyright (c) 2005 Linus Torvalds
 
-GIT_DIR=`git-rev-parse --git-dir` || exit $?
-
-usage () {
-    echo >&2 "Usage: git-tag [-a | -s | -u <key-id>] [-f | -d] [-m <msg>] <tagname> [<head>]"
-    exit 1
-}
-
-die () {
-    echo >&2 "$*"
-    exit 1
-}
+USAGE='[-a | -s | -u <key-id>] [-f | -d] [-m <msg>] <tagname> [<head>]'
+SUBDIRECTORY_OK='Yes'
+. git-sh-setup
 
 annotate=
 signed=
index 1f44da53496e880395286dafb431b9c3095df9f1..726b1e706ba247ee5b17e1312d7195119a690da2 100755 (executable)
@@ -1,11 +1,13 @@
 #!/bin/sh
 
-GIT_DIR=`git-rev-parse --git-dir` || exit $?
+USAGE='<tag>'
+SUBDIRECTORY_OK='Yes'
+. git-sh-setup
 
-die () {
-    echo >&2 "$*"
-    exit 1
-}
+if [ "$#" != "1" ]
+then
+  usage
+fi
 
 type="$(git-cat-file -t "$1" 2>/dev/null)" ||
        die "$1: no such object."
index 36f7749bed8a40f50f218bbd6c4dcf7763c5abee..c3de151942effc8ca1c9927a356b1b1b91bb0aeb 100755 (executable)
@@ -16,8 +16,8 @@ test_expect_success \
      git-update-index --add A &&
      git-commit -m "Initial commit."'
 
-test_expect_failure \
-    'git branch --help should return error code' \
+test_expect_success \
+    'git branch --help should return success now.' \
     'git-branch --help'
 
 test_expect_failure \