@matheusbsbs / matheus-bagliano / commits / 05bdcfe5fc
Fork 0

git-am: suggest what to do with superfluous patches

Particularly in the context of rebase, conflicts frequently occur because the change in the patch to be applied was made obsolete by new upstream commits. In this case, solving the conflict effectively means skipping the patch. However, it's not always readily apparent that the patch needs to be skipped, and when people solve the conflict and try git rebase --continue, they get confronted with a message of No changes - did you forget to use 'git add'? That's not very helpful if you did actually stage your changes and they happen to turn the patch into a no-op. This extends the message to point out what's going on. Signed-off-by: Jan Krüger <jk@jk.gs> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Jan Krüger committed May 30, 2010 at 10:19 UTC 05bdcfe5fc3d626b752c2cb574f05ed30b279bcf
1 file changed +2
git-am.sh
+2
@@ -726,6 +726,8 @@ do
726 resolved=
727 git diff-index --quiet --cached HEAD -- && {
728 echo "No changes - did you forget to use 'git add'?"
729 + echo "If there is nothing left to stage, chances are that something else"
730 + echo "already introduced the same changes; you might want to skip this patch."
731 stop_here_user_resolve $this
732 }
733 unmerged=$(git ls-files -u)