第一種處理方法
開發要求:
不能丟棄本地修改,因為其中的某些內容的確是我們需要的,此時需要對unmerged
的檔案進行手動修改,刪掉其中衝突的部分。
情景再現:
比如你在a分支上commit
了,然後pr
了,這時你的pr
沒有衝突的提示,可以合併。但是之後有人在你pr
的目標上的相同位置做了修改,這個時候,你的pr
就有衝突的提示了,不可以合併,怎麼辦?
解決方法:
需要先獲取遠端最新的origin/master
分支的上的commitid
,然後存在本地mstaer
分支上的乙個檔案內,然後再用git merge origin/master
合併到本地的檔案上。然後會出現衝突,再在衝突的檔案內根據需求將一些內容刪除掉,然後執行git add && git commit && git push origin
就不會再衝突了。
具體**如下:
// 切換到`brancha`分支
git checkout brancha // 獲取最新commitid
git fetch origin// 合併到本地檔案上
git merge origin/master// 對衝突內容進行修改後,執行
git add .
git commint -m 'finished'
git push origin master brancha
下面是官方的乙個例子,我寫了注釋
// 官方例子
// 第一步
git remote add upstream
// 第二步
git fetch upstream
// 輸出資訊
remote: counting objects: 3, done.
remote: compressing objects: 100% (3/3), done.
unpacking objects: 100% (3/3), done.
remote: total 3 (delta 0), reused 0 (delta 0)
from
* [new branch] master -> upstream/master
// 第三步
git merge upstream/master
// 輸出資訊
auto-merging blink.ino
conflict (content): merge conflict in blink.ino
automatic merge failed; fix conflicts and
then commit the result.
// 第四步
vim blink.ino
// 第五步
git add blink.ino
// 第六步
git commit
// 輸出資訊
[slow-blink 3c8d735] merge remote-tracking branch 'upstream/master' \
into slower-blink
// 第七步
git push origin slow-blink
// 輸出資訊
counting objects: 6, done.
delta compression using up to
8 threads.
compressing objects: 100% (6/6), done.
writing objects: 100% (6/6), 682 bytes | 0 bytes/s, done.
total 6 (delta 2), reused 0 (delta 0)
to ef4725c..3c8d735 slower-blink -> slow-blink
第二種解決方法
如果我們確定遠端的分支正好是我們需要的,而本地的分支上的修改比較陳舊或者不正確,那麼可以直接丟棄本地分支內容,執行如下命令(看需要決定是否需要執行git fetch
取得遠端分支):
$:git
reset--
hard
origin/master
玩轉GIT之git flow中容易忘記的git命令
git reset hard head2 git remote add origin git github.com stormzhang test.git 將本地的已有專案關聯到github上的新的專案上,在github上新建乙個倉庫。增加乙個本地版本庫到現有的 git 專案 可以執行如下的命令 g...
Git分支模型(GitFlow)
merge no ff 使用 no ff合併時,在刪除develop分支之後,該分支的合併資訊仍然被保留,在以後的 分析中可以便捷的檢視到歷史資訊,而fast forward方式則無法辨識 的合併資訊 master分支的head節點始終處於 準備好進行生產的狀態 即master分支的head節點所指...
Git分支Git Flow開發規範
規範化管理 庫分支有助於版本庫在演進過程中始終保持簡潔,主幹結構清晰。各個分支各司其職,有利於後續的維護更新,避免版本發布帶來的混亂問題。a successful git branching model git官方文件 branching workflows 以下為git分支開發規範的簡單總結 ma...