本文繼續我們的“高級git”系列。在Twitter上關注Tower,或訂閱其新聞通訊以獲取有關未來文章的最新信息。
合併衝突:GIT用戶,尤其是那些合作的人的常見挫敗感。但是,它們通常比看起來不那麼艱鉅。本期解釋了他們的原因,性質和解決方案。
高級GIT系列:
- 第1部分:掌握git犯罪
- 第2部分:有效的GIT分支策略
- 第3部分:簡化與拉請求的合作
- 第4部分:解決合併衝突(您在這裡! )
- 第5部分:反彈與合併:比較分析
- 第6部分:互動重新互動的力量
- 第7部分:挑選櫻桃提交:選擇性方法
- 第8部分:恢復反式倒流的損失承諾
理解合併衝突:原因和事件
當將不同來源的變化集成到當前分支中時,會出現合併衝突。這不僅限於分支合併;重新挑選,挑選櫻桃, git pull
甚至藏匿處都可能引發衝突。雖然並非每個集成都會導致衝突,但在存在矛盾的變化時會發生衝突。
Git的合併能力是一個關鍵優勢。它會自動處理大多數集成。但是,當更改衝突(例如,在兩個提交中修改或在一個分支中修改並在另一個分支中刪除的文件)的相同代碼行進行了不同的修改時,需要人為乾預來解決歧義。
認識合併衝突
GIT顯然信號合併衝突。終端將立即報告失敗的合併或折疊:
<code>$ git merge develop CONFLICT (content): Merge conflict in index.html Automatic merge failed; fix conflicts and then commit the result.</code>
即使您錯過了此消息, git status
也會突出衝突。像塔一樣的Git Guis提供視覺提示,以確保您不會忽略衝突。請放心,吉特(Git)很難錯過合併衝突。
取消合併衝突
忽略合併衝突不是一個選擇。必須解決。您有兩個選擇:解決衝突或撤銷引起的衝突。
使用--abort
參數(例如, git merge --abort
, git rebase --abort
)通常很簡單。這逆轉了合併/折疊,恢復了衝突前的狀態。即使您已經開始解決文件,這也有效。您總是可以中止和重新啟動。
合併衝突的解剖結構
讓我們檢查一個衝突index.html
文件:
git標記與的部分相互衝突。此標記後的內容來自您當前的分支(頭)。 <code>=======
分開相互衝突的變化,其次是另一個分支的變化(例如, develop
),標誌著 。
您的任務是使用文本編輯器,IDE,GIT GUI或合併工具編輯文件以解決衝突。
解決合併衝突
分辨率方法 - 文本編輯,IDE,GUI或合併工具 - 無關緊要;最終文件必須反映您所需的狀態。簡單的衝突可能涉及丟棄變更。更複雜的衝突可能需要協作來決定要保留哪種更改或如何結合它們。
儘管可以手動編輯,但專用工具通常會簡化該過程。 GIT GUI提供視覺衝突解決方案。合併工具提供了高級的DIFF查看和比較功能(並排,組合視圖等)。使用git config
配置您的首選工具,並使用git mergetool
調用它。
解決衝突並進行了更改之後( git add<filename></filename>
),像往常一樣進行更改。
請勿恐慌!
合併衝突是可以管理的。了解原因可以使您撤消或解決衝突。甚至錯誤都是可逆的。只需恢復衝突前的提交並重新開始即可。
要深入研究高級git,請探索免費的“高級git套件”,其中包含有關分支,互動式折疊,反射式,反式編碼的視頻,等等。
高級GIT系列:
- 第1部分:掌握git犯罪
- 第2部分:有效的GIT分支策略
- 第3部分:簡化與拉請求的合作
- 第4部分:解決合併衝突(您在這裡! )
- 第5部分:反彈與合併:比較分析
- 第6部分:互動重新互動的力量
- 第7部分:挑選櫻桃提交:選擇性方法
- 第8部分:恢復反式倒流的損失承諾
以上是合併衝突:它們是什麼以及如何與之打交道的詳細內容。更多資訊請關注PHP中文網其他相關文章!

對於Astro,我們可以在構建過程中生成大部分網站,但是有一小部分服務器端代碼可以使用Fuse.js之類的搜索功能來處理搜索功能。在此演示中,我們將使用保險絲搜索一組個人“書籤”


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

DVWA
Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

Atom編輯器mac版下載
最受歡迎的的開源編輯器