From: Linus Torvalds Date: Thu, 18 Aug 2005 22:31:40 +0000 (-0700) Subject: [PATCH] git-applymbox: verify that index is clean X-Git-Tag: v0.99.5~11^2~2 X-Git-Url: https://git.verplant.org/?a=commitdiff_plain;h=d571c2be99cb4ab96ff70c62c31d587271db9567;p=git.git [PATCH] git-applymbox: verify that index is clean This makes git-applymbox verify that the index matches the current HEAD before it starts applying patches. Otherwise, you might have updated the index with unrelated changes, and the first patch will commit not just the patch from the mbox, but also any changes you had in your index. Signed-off-by: Linus Torvalds Signed-off-by: Junio C Hamano --- diff --git a/tools/git-applymbox b/tools/git-applymbox index 889d4c17..afcb00a3 100755 --- a/tools/git-applymbox +++ b/tools/git-applymbox @@ -18,6 +18,8 @@ ## use a Signoff_file, because applypatch wants to append the sign-off ## message to msg-clean every time it is run. +. git-sh-setup-script || die "Not a git archive" + keep_subject= query_apply= continue= resume=t while case "$#" in 0) break ;; esac do @@ -39,6 +41,12 @@ case "$continue" in shift esac +files=$(git-diff-cache --cached --name-only HEAD) || exit +if [ "$files" ]; then + echo "Dirty index: cannot apply patches (dirty: $files)" >&2 + exit 1 +fi + case "$query_apply" in t) touch .dotest/.query_apply esac