我习惯在我正在处理的分支中运行git pull和其他命令.但我已经设置了一个可供多人工作的开发服务器,所以我不想在我这样做时切换分支.如果我想从我们都使用的github存储库更新开发服务器上的现有分支,那么这样做的正确方法是什么?如果我运行命令'git pull github branchname',那么只需将分支拉入当前分支?
我能找到的所有git示例似乎都表明你首先运行'checkout branchname',然后执行pull.我试图避免这种情况.正如我所说,这是一个现有的分支,我只想更新到最新版本.
小智 169
我正在寻找相同的东西,最后在另一个stackoverflow帖子中找到了对我有用的答案:合并,更新和拉Git分支而不使用checkout
基本上:
git fetch <remote> <srcBranch>:<destBranch>
Mar*_*ski 32
我有相同的问题,必须提交或存储当前功能更改,签出master分支,执行pull命令确实可以将所有内容从远程master工作区转移到本地工作区,然后再次切换到Feature分支并执行rebase以使其与最新的主。
为此,请将工作区保持在功能分支上,并避免所有切换,我这样做:
git fetch origin master:master
git rebase master
它很好地解决了问题。
SzG*_*SzG -15
使用
git fetch
Run Code Online (Sandbox Code Playgroud)
反而。它更新存储库中的远程引用和对象,但保留本地分支、HEAD 和工作树。