]> git.ozlabs.org Git - next-scripts/commitdiff
merge_old_version: do not use the refs/next... refs
authorStephen Rothwell <sfr@canb.auug.org.au>
Thu, 3 Jan 2013 23:19:51 +0000 (10:19 +1100)
committerStephen Rothwell <sfr@canb.auug.org.au>
Thu, 3 Jan 2013 23:19:51 +0000 (10:19 +1100)
merge_old_version

index d0a52f5293fd1bf4db0e198ca4a9c2bb8b30ce58..759bb5ab03ccfee8edba353821ff5def59c2b2e6 100755 (executable)
@@ -14,7 +14,7 @@ no_build=false
 tree=$1
 ver=$2
 
-rev=$(git show-ref --verify --hash "refs/next/$ver/$tree")
+rev=$(git show next-${ver}:Next/SHA1s | sed -n "s/^$tree\t*//p")
 [ "$rev" ] || {
        echo "No such tree/date" 1>&2
        exit 1
@@ -41,15 +41,16 @@ execute()
        return ${PIPESTATUS[0]}
 }
 
+bad_rev=$(git rev-parse --verify 'HEAD^2')
 GIT_EDITOR=: execute git reset --hard 'HEAD^' || {
        echo "git reset failed" 1>&2
        bash -i || exit
 }
 
-log Merging "refs/next/$ver/$tree"
-execute git merge "refs/next/$ver/$tree" || {
+log Merging "$ver version of $tree"
+execute git merge -m "$ver/$tree" "$rev" || {
        echo Merge failed 1>&2
-       echo "refs/next/$ver/$tree" >>../merge.debug
+       echo "$ver version of $tree" >>../merge.debug
        git diff >>../merge.debug 2>&1
        git diff 2>&1 | egrep -q '<<<<<|^\*' && {
                bash -i || exit
@@ -66,8 +67,8 @@ execute git merge "refs/next/$ver/$tree" || {
 }
 
 d=$(date --date "5 hours ago" '+%Y%m%d')
-git update-ref "refs/next/$d/broken/$tree" "refs/next/$d/$tree"
-git update-ref "refs/next/$d/$tree" "refs/next/$ver/$tree"
+git update-ref "refs/next/$d/broken/$tree" "$bad_rev"
+git update-ref "refs/next/$d/$tree" "$rev"
 
 $no_build && exit 0