在我的回购中,我有一个master
和dev
分支。
当我对dev
进行更改,并且master
有新的提交时,我会先做一个git fetch
来检查master
分支上是否有新的提交。
如果有一些新的提交,我可以做一个git pull origin master:master
来拉出主分支而不检查它,但是我有2次提取到存储库(一个在git fetch
期间,另一个在git pull
期间)。
另一种选择是做如下:
git checkout dev
git fetch (fetched a commit from origin/master)
git stash
git checkout master
git reset --hard origin/master
git checkout dev
git stash pop
(do commit, merge, etc)
我想做这样的事情:
git checkout dev
git fetch (fetched a commit from origin/master)
git (command to update the master branch to the last commit where origin/master is pointing)
(do commit, merge, etc)
我尝试了git reset --hard origin master:master
,但它给了我一个fatal: Path 'master' does not exist in 'origin/master'
那么,什么是神奇的git命令来重新分配/重置我的HEAD实际上没有指向的分支?
git checkout dev
git fetch origin master:master
第二个命令从远程origin
分支master
获取新提交,并将本地master
更新到origin/master
现在指向的位置。