Meta/Reintegrate: redo the rerere part

Junio C Hamano committed Mar 12, 2012 at 10:23 UTC bf6d875cd24423ea39a788c6c116328a246bae5b
1 file changed +7 -10
Reintegrate
+7 -10
@@ -1,6 +1,6 @@
1 #!/bin/sh
2
3 -accept_rerere=t generate=no update= diff=
3 +accept_rerere="--rerere-autoupdate" generate=no update= diff=
4 while case "$#,$1" in 0,*) break;; *,-*) ;; esac
5 do
6 case "$1" in
@@ -21,17 +21,12 @@ done
21 case "$generate" in
22 no)
23 accept_rerere () {
24 - if test -z "$accept_rerere"
25 - then
26 - return 1
27 - fi
28 - if git diff |
29 - grep -e "^.+" -e "^+." |
30 - grep -e "^..<<<<<<<" -e "^..=======" -e "^..>>>>>>>" >/dev/null
24 + if ! git write-tree 2>/dev/null
25 then
26 + git rerere remaining
27 return 1
28 else
34 - EDITOR=: git commit -a --no-verify
29 + EDITOR=: git commit --no-verify
30 echo "Accepted previous resolution"
31 return 0
32 fi
@@ -45,7 +40,9 @@ no)
40 save=$(git rev-parse --verify HEAD)
41
42 echo >&2 "* $branch"
48 - git merge --no-edit "$branch" || accept_rerere || exit
43 + git merge $accept_rerere --no-edit "$branch" ||
44 + accept_rerere ||
45 + exit
46
47 this=$(git rev-parse --verify HEAD)
48 if test "$this" = "$save"