での解決策を提案しますrebase onto。次のレポがあるとします。
user@HOST c:/_TEMP/FOO (AIOEC-393) $ git lga
* 8c2d5c5 - (HEAD, AIOEC-393) commit5 (Yanflea 2 minutes ago)
* 3c20e52 - commit4 (Yanflea 2 minutes ago)
* c5383af - commit3 (Yanflea 2 minutes ago)
* fb11e98 - commit2 (Yanflea 2 minutes ago)
* e019261 - (develop) commit1 (Yanflea 2 minutes ago)
* 0cfe064 - (master) Initial commit (Yanflea 2 minutes ago)
そして、 commit2AIOEC-393を除くブランチからのすべてのコミットが必要です。
'temp' ブランチに移動しましょう (AIOEC-393変更されないようにします):
$ git checkout -b develop-target
commit2をピボットとして使用してrebase ontoコマンドを使用します。
$ git rebase --onto develop fb11e98 develop-target
ログを見てみましょう:
user@HOST c:/_TEMP/FOO (develop-target) $ git lga
* 7bcb162 - (HEAD, develop-target) commit5 (Yanflea 2 minutes ago)
* 3c89459 - commit4 (Yanflea 2 minutes ago)
* e6ed5f7 - commit3 (Yanflea 2 minutes ago)
* e019261 - (develop) commit1 (Yanflea 2 minutes ago)
* 0cfe064 - (master) Initial commit (Yanflea 2 minutes ago)
developからに早送りするだけですdevelop-target(そして を削除しdevelop-targetます):
$ git checkout develop
$ git rebase develop-target
$ git branch -d develop-target
ログ:
user@HOST c:/_TEMP/FOO (develop) $ git lga
* 7bcb162 - (HEAD, develop) commit5 (Yanflea 2 minutes ago)
* 3c89459 - commit4 (Yanflea 2 minutes ago)
* e6ed5f7 - commit3 (Yanflea 2 minutes ago)
* e019261 - commit1 (Yanflea 2 minutes ago)
* 0cfe064 - (master) Initial commit (Yanflea 2 minutes ago)