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> --- git-commit.sh | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-)
Show changes to git-commit.sh +3 −1
diff --git a/git-commit.sh b/git-commit.sh index 6dd04fd..4bb16db 100755 --- a/git-commit.sh +++ b/git-commit.sh @@ -199,6 +199,7 @@ only= logfile= use_commit= amend= +edit_flag= no_edit= log_given= log_message= @@ -246,7 +247,7 @@ do shift ;; -e|--e|--ed|--edi|--edit) - no_edit= + edit_flag=t shift ;; -i|--i|--in|--inc|--incl|--inclu|--includ|--include) @@ -384,6 +385,7 @@ do ;; esac done +case "$edit_flag" in t) no_edit= ;; esac ################################################################ # Sanity check options
-- 1.4.1.rc1.gf603-dirty