diff options
author | Junio C Hamano <junkio@cox.net> | 2006-02-23 22:14:47 -0800 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2006-02-23 22:14:47 -0800 |
commit | 6d28644d691fa3967d24d988d51d863f22bbcc63 (patch) | |
tree | 4c35aec59268cc0b0c8fa2eacbf624792b466bcc /git-am.sh | |
parent | 183bdb2cccff792f11fd9e825df67af446aff171 (diff) | |
download | git-6d28644d691fa3967d24d988d51d863f22bbcc63.tar.gz git-6d28644d691fa3967d24d988d51d863f22bbcc63.tar.xz |
git-am: do not allow empty commits by mistake.
Running "git-am --resolved" without doing anything can create an empty
commit. Prevent it.
Thanks for Eric W. Biederman for spotting this.
Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'git-am.sh')
-rwxr-xr-x | git-am.sh | 10 |
1 files changed, 8 insertions, 2 deletions
@@ -300,7 +300,7 @@ do } >"$dotest/final-commit" ;; *) - case "$resolved,$interactive" in + case "$resolved$interactive" in tt) # This is used only for interactive view option. git-diff-index -p --cached HEAD >"$dotest/patch" @@ -364,6 +364,12 @@ do # trust what the user has in the index file and the # working tree. resolved= + changed="$(git-diff-index --cached --name-only HEAD)" + if test '' = "$changed" + then + echo "No changes - did you forget update-index?" + stop_here $this + fi apply_status=0 ;; esac @@ -374,7 +380,7 @@ do then # Applying the patch to an earlier tree and merging the # result may have produced the same tree as ours. - changed="$(git-diff-index --cached --name-only -z HEAD)" + changed="$(git-diff-index --cached --name-only HEAD)" if test '' = "$changed" then echo No changes -- Patch already applied. |