2012-01-10 6 views
5

私はfeatureというブランチを持っていて、それにはいくつかのコミットがあります。ブランチとそのコミットはまだ私のマシンのローカルです(公開リポジトリにはありません)。グラフは、今、私が以前のオフ枝featuremasterにコミットする必要があります行ったことに気づき分岐点を変更する

A---B---C---D---E---F---G master 
        \ 
        P---Q---R feature 

のように見えます。コミットCとしましょう。言い換えれば、グラフ私は本質的にやろうとしています何

A---B---C---D---E---F---G master 
     \ 
      P---Q---R feature 

のようになります。元に戻すにはfeature枝のうちのDEFをコミットしています。はい、私はちょうどrevertは1つずつコミットできましたが、元に戻すには余りにも多くあります。上記の写真は単なるイラストです。

答えて

6

あなたがしたいことはrebaseです。コミットPQRをピックアップし、Cの上にそれらを適用するには、実行します。

git rebase --onto C F feature 

詳細についてはgit-rebaseのマン・ページを参照してください。

+0

パーフェクト。私はmanページに十分な情報を読まなかったことが分かります。私は質問を投稿する前に 'rebase'をしました。しかし、それはちょうど 'コミットC'はすでに存在していたと言いました。秘密のソースは '--onto'スイッチです。ありがとう –