在Git中,在合併期間,有沒有一種方法可以告訴git在發生衝突時放棄本地更改並應用合併分支?Git合併,同時丟棄任何以前的更改(在本地存儲庫或從上次提交)
我的意思是如果有一種方法,那麼我們可以做合併像分支合併沒有衝突。
在Git中,在合併期間,有沒有一種方法可以告訴git在發生衝突時放棄本地更改並應用合併分支?Git合併,同時丟棄任何以前的更改(在本地存儲庫或從上次提交)
我的意思是如果有一種方法,那麼我們可以做合併像分支合併沒有衝突。
這聽起來像你想閱讀有關合並的策略「他們」和「我們的」。合併時,您可以指定您當前的分支(我們的)或遠程分支(他們的)是正確的。
嘗試合併之前,您可以自己丟棄本地更改git reset --hard HEAD
。
你可以用你想要的任何提交散列代替HEAD
。
這會給你帶來乾淨的提交狀態,你實際上對,你會失去所有的變化。
如果你想留住他們,你可以之前git stash
藏匿,或將其移動到另一個分支:
git checkout -b new_branch
git add .
git commit -m "My awesome commit"
git checkout - # will bring you back to the last branch you were in
我想要的是給予遠程內容的優先級。就這樣,即使Git發現衝突,它也會與遠程更改一起進行。 – 2012-07-31 10:46:13
如果您想忽略所有本地更改,並且您想要將分支移動到遠程HEAD,則需要額外的合併提交。
git log --oneline origin/master
# assume the first sha is bbdfa17
git reset --hard bbdfa17
現在,您處於沒有合併提交的樹的頂端。
沒有一種叫做他們的策略。只有默認的「遞歸」策略選項叫做「他們」和「我們的」。有一種策略叫做「我們的」,但與前面提到的兩個選項完全不同。 – Fritz 2016-05-17 11:26:17