diff options
author | Junio C Hamano <gitster@pobox.com> | 2012-03-12 17:23:08 (GMT) |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2012-03-12 17:23:08 (GMT) |
commit | bf6d875cd24423ea39a788c6c116328a246bae5b (patch) | |
tree | 1bf6b78ede79d83754d9362dce61279956e80012 /Reintegrate | |
parent | a0ecc542b63a63ac921f4160f7d8a4b588557a7d (diff) | |
download | git-bf6d875cd24423ea39a788c6c116328a246bae5b.zip git-bf6d875cd24423ea39a788c6c116328a246bae5b.tar.gz git-bf6d875cd24423ea39a788c6c116328a246bae5b.tar.bz2 |
Meta/Reintegrate: redo the rerere part
Diffstat (limited to 'Reintegrate')
-rwxr-xr-x | Reintegrate | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/Reintegrate b/Reintegrate index 686b6f4..bcacea6 100755 --- a/Reintegrate +++ b/Reintegrate @@ -1,6 +1,6 @@ #!/bin/sh -accept_rerere=t generate=no update= diff= +accept_rerere="--rerere-autoupdate" generate=no update= diff= while case "$#,$1" in 0,*) break;; *,-*) ;; esac do case "$1" in @@ -21,17 +21,12 @@ done case "$generate" in no) accept_rerere () { - if test -z "$accept_rerere" - then - return 1 - fi - if git diff | - grep -e "^.+" -e "^+." | - grep -e "^..<<<<<<<" -e "^..=======" -e "^..>>>>>>>" >/dev/null + if ! git write-tree 2>/dev/null then + git rerere remaining return 1 else - EDITOR=: git commit -a --no-verify + EDITOR=: git commit --no-verify echo "Accepted previous resolution" return 0 fi @@ -45,7 +40,9 @@ no) save=$(git rev-parse --verify HEAD) echo >&2 "* $branch" - git merge --no-edit "$branch" || accept_rerere || exit + git merge $accept_rerere --no-edit "$branch" || + accept_rerere || + exit this=$(git rev-parse --verify HEAD) if test "$this" = "$save" |