Git:改变HEAD
我在Bitbuket上有两个分支的存储库:
$ git branch -a
* master
remotes/origin/HEAD -> origin/master
remotes/origin/master
remotes/origin/ng-1
master
包含旧的工具代码,而ng-1
- new。
我想要做的是 - 将master
切换到ng-1
以便在执行git pull
时 - 它将从"master"
提取代码 - 但是使用新代码。
比方说 - 我想要将代码从master
移动到ng-1
- 并且从ng-1
到master
。
当我Google搜索 - 这可以通过以下方式完成:
$ git update-ref HEAD ng-1
因此 - “主要默认”分支将成为ng-1
, master
将被保存为我的“备份”。
如果出现问题 - 我可以反之亦然:
$ git update-ref HEAD master
我对么?
我想要做的 - 是将主控切换到ng-1
// Checkout the new branch
git checkout ng-1
...当执行git pull时 - 它将从“主”中提取代码 - 但是会使用新代码
// Pull "old" changes - if ng-1 is forked from master no update should be pulled
git pull origin master
// Now you ng-1 contains the "new" code as well.
在这里找到答案:
https://stackoverflow.com/a/2862938/2720802
$ git fetch && git checkout ng-1
$ git branch
master
* ng-1
$ git merge -s ours master
Already up-to-date.
$ git checkout master
$ git merge ng-1
Already up-to-date.
$ git branch
* master
ng-1
$ git add -A
$ git commit -m "Merged"
$ git push origin
似乎一切都完成了。
我会看看使用SourceTree,一个GUI,它可以帮助你可视化你想做什么,它是由做BitBucket的人做的。
明智地回答一下codeWizard所说的将通过它的声音来做你所追求的。
链接地址: http://www.djcxy.com/p/94811.html上一篇: Git: change HEAD