Skip to contentSkip to conversation

rebase: do not print lots of usage hints after an obvious error message

PATCH In review Johannes Sixt 2 participants 2 messages Jun 15, 2016

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 rebase: do not print lots of usage hints after an obvious error message

From: Johannes Sixt <[email protected]>

When a non-existent branch was specified to be rebased, the complete usage information is printed after the error message that carries the relevant piece of information:

   $ git rebase master topci
   fatal: no such branch: topci
   usage: git rebase [-i] [options] [--onto <newbase>] [<upstream>] [<branch>]
      or: git rebase [-i] [options] --onto <newbase> --root [<branch>]
      or: git-rebase [-i] --continue | --abort | --skip

Available options are
[30 lines of usage stripped]

The error message was introduced recently by 4ac5356c (rebase: give a better error message for bogus branch, 2011-01-27), and the result was acceptable because the usage text was just two lines. But 45e2acf3 (rebase: define options in OPTIONS_SPEC, 2011-02-28) made things worse because the usage text is now 35 lines.

Just drop the usage information because it does not add value to the error message.

---
Note: git-sh-setup's die() does not print "fatal: ".

 git-rebase.sh |    3 +--
 1 files changed, 1 insertions(+), 2 deletions(-)
git-rebase.sh +1 -2
index d7855ea..4761f28 100755
@@ -441,8 +441,7 @@ case "$#" in
 	then
 		head_name="detached HEAD"
 	else
-		echo >&2 "fatal: no such branch: $1"
-		usage
+		die "fatal: no such branch: $1"
 	fi
 	;;
 *)
Signature · 1 line
1.7.6.86.gdfda2
Acked-by on v1 1/1
#1 lore raw
Quoted 8 lines · Johannes Sixt

The error message was introduced recently by 4ac5356c (rebase: give a better error message for bogus branch, 2011-01-27), and the result was acceptable because the usage text was just two lines. But 45e2acf3 (rebase: define options in OPTIONS_SPEC, 2011-02-28) made things worse because the usage text is now 35 lines.

Just drop the usage information because it does not add value to the error message.

A git-sh-setup function to print just the summary bit of the usage would restore the original behavior, but I agree it's not really adding anything.

-Peff