2017-05-03 37 views

回答

3

旁註:你不想--theirs - 這就是一個選項,以git checkout,而不是合併,並沒有-s theirs戰略,只有一個-X theirs戰略選項(我喜歡稱之爲「擴展選項「將它們與-s策略區分開來)。

但是,答案是,您不能:它作爲git stash代碼的一部分不被支持。

可能以不同的方式做到這一點。 The git stash script,這是一個shell腳本,您可以複製,修改或零散地運行其各個位,運行git merge-recursive $b_tree -- $c_tree $w_tree合併到隱藏的工作樹提交中。您可以自己手動執行此操作,也可以通過複製和修改腳本,並使用其他-X擴展選項。但是,這並不保證what you want。這隻會影響到了Git認爲是矛盾的地方,在這種情況下,將有利於一方或另一方:-X ours手段有利於$b_tree至 - $c_tree變化,而不是$b_tree$w_tree變化,-X theirs手段有利於$b_tree$w_tree更改。儘管如此,您可能希望從$w_tree提交整個文件,或者不要採取一些不會相互衝突的更改。 (你可以在私有分支上創建自己的提交會更容易也更直接;然後你可以隨時提取單個文件和/或做任何你喜歡的合併,而不必擔心腳本的內部細節可能會從一個Git版本變化到另一個版本。請注意,要一次合併一個特定文件,您可以使用git merge-file,但它有點類似於klunky。)