鍍金池/ 問答/Linux/ 本地分支只合并不merge新增文件

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

  1. 在測試機(jī)器有一個分支master,是從git庫里面clone下來的。
  2. 現(xiàn)在測試機(jī)的分支里面有兩個目錄會不定時的更新前端文件。當(dāng)分支的非前端文件目錄更新后希望master代碼同步更新到測試機(jī)分支。
  3. 使用git fetch命令拉取了最新的master分支代碼到測試機(jī),但是測試機(jī)的代碼庫沒有任何反應(yīng),需要自己手動merge一次才能生效嗎?如何操作呢?
回答
編輯回答
檸檬藍(lán)

這里講解一下git fetch的原理吧。
git fetch是將代碼從遠(yuǎn)程倉庫讀取過來并且覆蓋本地倉庫的內(nèi)容。
git分為三個部分workspaceindexrepository
workspace是指你的工作區(qū)域,一般是IDE中的代碼
index是指本地的緩存,通過add操作將文件的更新添加至index
repository是指本地git倉庫,這個倉庫中的代碼是通過commit添加的,push到遠(yuǎn)程倉庫的代碼也是這個位置的代碼

所以git fetch更新的是repository部分的代碼,workspace和index暫時還沒有更新。如果想要看到最新的代碼,只需要在master(或者其它相應(yīng)的)分支上執(zhí)行g(shù)it merge指令,解決掉沖突再提交一遍就可以了。

git也提供了快捷指令git pull,可以直接用遠(yuǎn)程倉庫的內(nèi)容覆蓋workspace的內(nèi)容。但是不推薦這個指令,因?yàn)楹芸赡軙采w掉你尚未提交的更新。

2018年8月3日 00:46