簡體   English   中英

Git合並和更改,安全的交易方式

[英]Git Merge and Changes, Safe Way to Deal

我正在嘗試將一個分支合並到母版中。 我建立的分支auths_images具有要在master覆蓋的更改。 當我合並時,基本上會告訴我整個錯誤提示...

CONFLICT (add/add): Merge conflict in file
Automatic merge failed; fix conflicts and then commit the result.

我知道auth_imagesmaster最新信息,並且具有可以與master一起使用的更改。 如何合並才能使用分支中的更改?

添加/添加沖突意味着,由於基礎,當前分支上的當前(HEAD)提交以及另一個分支的頂端都添加了具有相同名稱的文件。 Git不知道該如何處理。 您必須將正確的組合文件放入工作樹,然后在該路徑名上運行git add

如果這兩個文件都是一模一樣的,Git會不會有問題。 Git會對自己說: 天哪,文件somenewfile在分支auth_images是全新的,在master也是全新的。 但是看看,兩個分支技巧現在都一樣 我可以只使用其中之一,一切都會好起來的! 因此,兩個文件必須不同。 Git不知道要使用哪個文件:是auth_images提示中的哪個文件,還是master提示中的另一個文件? 也許正確的做法是將每個部分組合起來!

如果您確定這兩個文件之一恰好是正確的文件,那么現在就從該提交中提取那個文件:

git checkout master -- somenewfile

要么:

git checkout auth_images -- somenewfile

請記住,這兩個在定義上是不同的:如果它們相同,那么Git就不會抱怨。 因此,請確保您選對了一個。

從正確的分支提示中檢出正確的文件將解決此特定文件。 對於其他兩個分支提示中的某個特定文件正確的其他add/add沖突,請重復此操作。 假設只有這些問題,您的git status現在將說明所有問題都已解決,並且合並准備就緒,可以運行:

git commit

完成合並。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM