簡體   English   中英

Git以自定義方式使用我們和他們的合並

[英]Git merging using ours and theirs in custom way

我想合並分支母版上的分支發行版,這樣我可以解決所有沖突,從而有利於母版(我們的),但我想要解決所有特定問題的文件夾都支持發行版(它們的)。 有一種干凈的方法嗎?

基本上,我正在嘗試解決早期合並所造成的混亂。

假設有三個文件夾foo/bar/fizz/ ,而您贊成使用fizz release和其余的master release

#you've encountered the conflicts during a merge
git checkout master -- . ':!fizz/'
git checkout release -- fizz/
git commit

. ':!fizz/' . ':!fizz/'表示除fizz/之外的所有內容。 因此, master foo/bar/已簽出。 同樣,檢出release fizz/ 最后, git commit完成合並過程。

更新:

正如@torek的評論所說,以上步驟對於子文件夾而言是-s ours的(請注意,沒有-s theirs )。 它忽略了“他們”的所有變化。 如果您想要的是僅針對有沖突的部分自動選擇我們的更改,並且只要合並可以就行,那么它應該使用git merge -X oursgit merge -X theirs ,並且不要運行命令在答案中。 正如@torek所說, git merge-file --ours/--theirs工作。

暫無
暫無

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

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