本地分支只合并不merge新增文件

  1. 在测试机器有一个分支master,是从git库里面clone下来的。
  2. 现在测试机的分支里面有两个目录会不定时的更新前端文件。当分支的非前端文件目录更新后希望master代码同步更新到测试机分支。
  3. 使用git fetch命令拉取了最新的master分支代码到测试机,但是测试机的代码库没有任何反应,需要自己手动merge一次才能生效吗?如何操作呢?
阅读 5.4k
1 个回答

这里讲解一下git fetch的原理吧。
git fetch是将代码从远程仓库读取过来并且覆盖本地仓库的内容。
git分为三个部分workspaceindexrepository
workspace是指你的工作区域,一般是IDE中的代码
index是指本地的缓存,通过add操作将文件的更新添加至index
repository是指本地git仓库,这个仓库中的代码是通过commit添加的,push到远程仓库的代码也是这个位置的代码

所以git fetch更新的是repository部分的代码,workspace和index暂时还没有更新。如果想要看到最新的代码,只需要在master(或者其它相应的)分支上执行git merge指令,解决掉冲突再提交一遍就可以了。

git也提供了快捷指令git pull,可以直接用远程仓库的内容覆盖workspace的内容。但是不推荐这个指令,因为很可能会覆盖掉你尚未提交的更新。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题