git-commit: allow -e option anywhere on command line
Previously, the command 'git-commit -e -m foo' would ignore the '-e' option
because the '-m' option overwrites the no_edit flag during sequential
option parsing. Now we cause -e to reset the no_edit flag after all
options are parsed.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <junkio@cox.net>
diff --git a/git-commit.sh b/git-commit.sh
index 6dd04fd..e74fe64 100755
--- a/git-commit.sh
+++ b/git-commit.sh
@@ -199,6 +199,7 @@
logfile=
use_commit=
amend=
+edit_flag=
no_edit=
log_given=
log_message=
@@ -246,7 +247,7 @@
shift
;;
-e|--e|--ed|--edi|--edit)
- no_edit=
+ edit_flag=t
shift
;;
-i|--i|--in|--inc|--incl|--inclu|--includ|--include)
@@ -384,6 +385,7 @@
;;
esac
done
+case "$edit_flag" in t) no_edit= ;; esac
################################################################
# Sanity check options