为了账号安全,请及时绑定邮箱和手机立即绑定

git fetch和git merge远端分支的问题求老司机指点!

git fetch和git merge远端分支的问题求老司机指点!

饮歌长啸 2019-12-11 10:09:51
因为使用git不久。同事教我的更新远端分支并merge的方法是:先执行gitfetch,然后在自己的分支执行gitmergeorigin/同事分支。这样来更新合并。百度了下gitfetch是将远端的所有分支更新到本地的FETCH_HEAD,但为啥merge的时候仍然是merge的远端的origin/同事分支,而不是merge的FETCH_HEAD?gitfetch更新所有分支到本地FETCH_HEAD,感觉也没用啥作用,还是要执行gitmergeorigin/同事分支来merge远程分支啊。那么gitfetch为啥不能省略呢?
查看完整描述

2 回答

?
智慧大石

TA贡献1946条经验 获得超3个赞

只有gitfetch真正读取远程的分支,然后在本地创建远程分支的一个拷贝。这个拷贝的名字叫origin/同事分支。

gitmerge只是在操作远程分支在本地的一个拷贝。


查看完整回答
反对 回复 2019-12-12
?
互换的青春

TA贡献1797条经验 获得超6个赞

远程跟踪分支是远程分支状态的引用,它们以(remote)/(branch)形式命名。通常最好不要手动的移动它们,当你做任何网络通信操作时,它们会自动移动,比如我们使用的gitfetch命令。使用gitfetch命令会从指定远程抓取本地没有的数据,并且更新本地数据库,移动本地的远程指针指向新的、更新后的位置。需要注意的一点就是当抓取到新的远程跟踪分支时,本地不会自动生成一份可编辑的副本(拷贝)。从另一方面来说它并不会修改工作目录中的内容,而只会获取数据然后让你自己合并。如果你想省略合并的步骤的话,大多数情况下你可以使用gitpull命令,它工作的像是先使用gitfetch后紧接着一个gitmerge命令。


查看完整回答
反对 回复 2019-12-12
  • 2 回答
  • 0 关注
  • 249 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号