2013-01-11 50 views
39

當我將git中的某個分支合併到master時,我經常會遇到合併衝突。有沒有辦法合併一個分支,只是覆蓋當前分支中的東西?Git:合併但覆蓋更改

+0

你的意思是像在SVN中 - 使用他們的? – stdcall

+0

我自動爲合併選擇一面的經驗從來都不是很好。另外,是不是合併衝突的關鍵,以檢查在刪除其更改之前,其他人在與您相同的行上發生了哪些變化? – Molske

+3

這是我第一次在當地取得分支..它只是比拖網通過文件和消除衝突更快 –

回答

55

-X ours添加到您的git merge命令中。

假設您正在您當地的分支機構工作。然後,你要在master什麼地方合併:

git merge -X ours master 

在另一方面,如果你master並希望您當地的分行合併到master然後@elhadi正確地說,你應該使用theirs

git merge -X theirs somebranch 
+1

策略是他們的工作不是我們的工作 –

+0

@elhadi我的理解是,約翰亨特想推*他的*工作,而不是他們的工作。 – kmkaplan

+0

這是一個本地分支是的。例如,我一直在研究分支,並且想要合併/替換一些分支文件來代替主分支。 –

4

覆蓋你的員工在你的分支,並採取他們的工作,你應該讓

git merge --strategy=recursive -X theirs {remote/branch} --> example:origin/master