X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=git-am.sh;h=c9f66e278454374714794477be7ff8b93cd05a0f;hb=6777c3806da18d4a3a05e5bcdde0aa9efb9b3b9f;hp=6db9cb503a2717d0c45ee40e262747cbeba3ad17;hpb=3eee9c6dbebcf6341ad202f7dd4d416ef3fcba5e;p=git.git diff --git a/git-am.sh b/git-am.sh index 6db9cb503..c9f66e278 100755 --- a/git-am.sh +++ b/git-am.sh @@ -66,7 +66,7 @@ fall_back_3way () { git-update-index -z --index-info <"$dotest/patch-merge-index-info" && GIT_INDEX_FILE="$dotest/patch-merge-tmp-index" \ git-write-tree >"$dotest/patch-merge-base+" || - cannot_fallback "Patch does not record usable index information." + cannot_fallback "Repository lacks necessary blobs to fall back on 3-way merge." echo Using index info to reconstruct a base tree... if GIT_INDEX_FILE="$dotest/patch-merge-tmp-index" \ @@ -290,6 +290,10 @@ do git-mailinfo $keep $utf8 "$dotest/msg" "$dotest/patch" \ <"$dotest/$msgnum" >"$dotest/info" || stop_here $this + test -s $dotest/patch || { + echo "Patch is empty. Was it split wrong?" + stop_here $this + } git-stripspace < "$dotest/msg" > "$dotest/msg-clean" ;; esac @@ -404,12 +408,10 @@ 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 + git-diff-index --quiet --cached HEAD && { echo "No changes - did you forget to use 'git add'?" stop_here_user_resolve $this - fi + } unmerged=$(git-ls-files -u) if test -n "$unmerged" then @@ -431,13 +433,11 @@ 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 HEAD)" - if test '' = "$changed" - then - echo No changes -- Patch already applied. - go_next - continue - fi + git-diff-index --quiet --cached HEAD && { + echo No changes -- Patch already applied. + go_next + continue + } # clear apply_status -- we have successfully merged. apply_status=0 fi