All, Big thanks to Yu for noticing and alerting us about an unintended next-fork. Luckily the next HEAD was only two commits ahead, and we were able to find all the missing commits. Cleber applied all of them (missing) onto current next HEAD so nothing was lost.
Based on the history of events, it looks like the divergent push came in from here: https://github.com/autotest/virt-test/pull/307 So we are guessing ypu might have --force pushed to next by mistake. If so, _we're_not_mad_, it's an innocent enough mistake (I've done it myself before). The only other possibility is "The Green Button" (on pull requests) caused the trouble. We would really not like this to be the cause, but we need to be sure. I am hoping Ypu just made this simple mistake- Ypu, do you remember if you did --force push to next? --- Unfortunately, this likely means everyone's local next branches are tracking a dead-HEAD next (ending at 939f5aa06903606b340b088878c1244ab0744ad4). Instead, the current (fixed) next HEAD contains 06104d14b4e465b8922bdce1ff6e576efdfdb5f3. This is the reason we really like to avoid --force push to next (unless it is absolutely necessary to fix some problem). Fortunately, fixing your next-tracking topic-branches should be pretty easy, even if you already have made commits on them. Hopefully everyone is working with topic-branches, explained in https://www.redhat.com/archives/virt-test-devel/2013-April/msg00190.html Using my messed up 'example_commit' topic-branch as an example, here's how I fixed it: # Download all updates to remote repos. $ git remote update Fetching upstream ... Fetching origin ... # Remember, my 'upstream' remote points to autotest on github # and my 'origin' points to my autotest-fork on github... # Get your local next onto the correct HEAD # warning: if you made changes to your local next (not recommended) # this will destroy them! $ git checkout next ... $ git reset --hard upstream/next HEAD is now at ... # Switch to a broken topic-branch (notice the diverged message): $ git checkout example_commit Switched to branch 'example_commit' Your branch and 'next' have diverged, and have 1 and 7 different commits each, respectively. (use "git pull" to merge the remote branch into yours) # Make a note of current (broken) head, in case you need to go back. $ git log --oneline --no-abbrev-commit -3 cf5971aa69074a0b79a1b9f6cf698fbb9b4418e2 example_commit 939f5aa06903606b340b088878c1244ab0744ad4 Merge pull request #300 bc783c63c11c08b38a619e5f4b19f294b8fa4bdf qemu: Add macvtap support # Rebase your changes onto current next $ git rebase next First, rewinding head to replay your work on top of it... Applying: ... # If the rebase doen't work (conflicts) and you can't fix it, # ask for help. This is where making a note of commit ID (above) # will come in handy :) You may have to extract your commits as # patches, then apply them to a fresh next-tracking topic-branch # one-by-one (not too painful). # Once fixed, upload the fixed topic-branch to github # The --force is necessary here since github copy is based on # the dead-HEAD next and we want to overwrite it. $ git push --force origin example_commit ... To [email protected]:cevich/virt-test.git 7c25b2b..8d34460 example_commit -> example_commit # Now my topic-branch is tracking upstream/next correctly $ git status # On branch example_commit # Your branch is ahead of 'next' by 1 commit. # (use "git push" to publish your local commits) # nothing to commit, working directory clean If I understand correctly, this will automatically update any/all pull requests automatically. Though if you do run into any problems you can't fix, just ask. We're happy to help. -- Chris Evich, RHCA, RHCE, RHCDS, RHCSS Quality Assurance Engineer e-mail: cevich + `@' + redhat.com o: 1-888-RED-HAT1 x44214 _______________________________________________ Virt-test-devel mailing list [email protected] https://www.redhat.com/mailman/listinfo/virt-test-devel
