From 33921847a2dd6d9d6e382b55337492e97ebc666b Mon Sep 17 00:00:00 2001 From: Bruce Ashfield Date: Wed, 22 Aug 2012 01:18:05 -0400 Subject: kernel-yocto: set master branch to a defined SRCREV To support custom repositories that set a SRCREV and that only have a single master branch, do_validate_branches needs a special case for 'master'. We can't delete and recreate the branch, since you cannot delete the current branch, instead we must reset the branch to the proper SRCREV. (From OE-Core rev: 3a8dc0a01d2756bb8f51afccad772fca1dc48af3) Signed-off-by: Bruce Ashfield Signed-off-by: Richard Purdie --- meta/classes/kernel-yocto.bbclass | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'meta/classes') diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass index d859d763d4..e6758cfa42 100644 --- a/meta/classes/kernel-yocto.bbclass +++ b/meta/classes/kernel-yocto.bbclass @@ -270,11 +270,15 @@ do_validate_branches() { # SRCREV (if it isn't the current HEAD of that branch) git checkout -q master for b in $containing_branches; do - branch_head=`git show-ref -s --heads ${b}` + branch_head=`git show-ref -s --heads ${b}` if [ "$branch_head" != "$target_branch_head" ]; then - echo "[INFO] Setting branch $b to ${target_branch_head}" - git branch -D $b > /dev/null - git branch $b $target_branch_head > /dev/null + echo "[INFO] Setting branch $b to ${target_branch_head}" + if [ "$b" == "master" ]; then + git reset --hard $target_branch_head > /dev/null + else + git branch -D $b > /dev/null + git branch $b $target_branch_head > /dev/null + fi fi done -- cgit v1.2.3-54-g00ecf