2013-06-26 202 views
34

我有兩個有很少類似的歷史,但彼此相關的分支。git從兩個分支之間的差異創建提交

我想要這兩個之間的變化一個 git提交。

文件已被刪除,這些補丁之間產生,我想修補,以反映

即:下面的東西,將無法正常工作:

git diff branch_a branch_b -- > patchfile 
git checkout branch_b 
git apply patchfile # deletes and adds are ignored 
git commit # we miss the deletes 

回答

64

一個簡單的方法來做到這一點是:

- create and checkout branch tmp at branch_a 
- reset --soft to branch_b 
- commit 

犯下必須擁有所有差異

+1

你不需要一個共同的承諾,甚至不需要事先接觸分支。只要嘗試在gitk中做 - 當你在新分支上試驗時,無論如何你都會有一個自由奔跑。 –

+0

使用git爲我工作1.7.9.5 – wischan

+1

你能舉個例子嗎?謝謝 ! – Charaf

-3

git apply --index。這就是爲什麼它什麼都不做的原因。

此外,請確保您位於根目錄中,因此.git必須在那裏。

相關問題