2016-03-04 37 views
1

我有從A到E的版本。兩個分支頭,Branch1和Branch2。Git合併來自另一個分支的兩個特定提交之間的更改

E <- Branch2 
| 
D 
| 
C 
| 
B 
| 
A <- Branch1 

現在我想申請的區別說C和d,到分支1,使得A和A1之間的差異,正好是C和D.

E <- Branch2 
| 
D 
| 
C 
| 
B A1 <- Branch1 
|/
A 

兩個問題之間的同。

  1. 我該怎麼做?我是否創建補丁文件?或者有沒有辦法在Git中完成這項工作,以便Git知道它有相同的區別?
  2. 其實我試過git diff C D > patch.diff做了一個補丁,然後 然後git apply patch.diff來申請,而且不知何故我沒有看到 的區別。
+0

難道你不能只挑選D到Branch1上嗎? –

+0

@OliverCharlesworth我們從字面上同時得出這個結論,對你很好。 –

回答

2

我相信你可以只摘櫻桃承諾從店2 D到您的分支1:

git checkout Branch1 
git cherry-pick <SHA-1 for commit D> 

這應該工作的原因是,提交D基本上代表一個diff提交CD之間。您希望將此更改集應用於其他提交,在此情況下,請在Branch1上提交A

相關問題