2016-07-29 204 views
1

我們有開發分支,從中出現功能分支。一些功能足夠大,它們成爲主題分支。然後這些主題分支有更多的子分支被合併到主題分支中,並且在所有主題完成之後,然後它被合併到開發中。如何將主題分支的功能分支重定位到開發分支?

現在,我開始從主題分支的功能分支,但我應該從開發開始。我怎樣才能改變這個?

development 
A--B--C--D--E--F--G 
     \ 
topic T1----------T2--T3--T4--T5 
     \  /  \ 
      U1--U2--U3   W1--W2--W3 
     sub-feature U   feature W` 

功能W應該從開發分支開始。

有沒有一種方法可以將W1,W2和W3提交到開發分支而不需要觸及主題分支T?

我知道我可以簽出開發分支和櫻桃選擇每個提交,但這會創建一個新的元數據提交。我想保留提交創建日期,也許作者!

回答

3

,您可以撥打rebase --onto

git rebase --committer-date-is-author-date --onto dev T4 W` 

這將重播任何承諾T4,直至幷包括W HEAD,到dev分支。

     W1'--W2'--W3' (W) 
        /
A--B--C--D--E--F--G (dev) 
     \ 
topic T1----------T2--T3--T4--T5 
     \  /  
      U1--U2--U3   
     sub-feature U   

請參閱「git rebase without changing commit timestamps」,作爲一種解決方法,以保持一個合理的提交日期。
但是任何rebase都會改變元數據。

+0

工作就像一個魅力。解決衝突並繼續工作。謝謝。 – arenaq

相關問題