2012-03-21 9 views
1

どのように対話的に1つのdiffファイルを2つ以上のdiffファイルに分割するのですか?対話的に分割するdiff

mercurial hg diffコマンドを使用して差分を生成します。大きな変更セットを複数の小さな変更セットに分けて、コードの変更を加えたいと思います。これは本当に対話的にしかできません。私は各変更や行の変更を促され、複数のファイルのうちどれを保存するかを選択したいと思います。必要に応じてインラインで編集するオプションを使用することをお勧めします。

答えて

1

diffファイルを直接使用できるかどうかはわかりませんが、diffファイルを適用して2つの異なるバージョンのファイルを取得する場合は、KDiff3を使用して、変更内容を選択するインタラクティブマージを実行できますあなたは欲しい。ソースファイルから逐語コピーを選択するか、手動で結果を編集することができます。

KDiff3 session example

あなたが持っているしたい3つの別々の変化(例えばに分かれているしたいと思いスタート/エンドポイントがfile_150.cを言うように、あなたはfile_100.cとfile_200.cが言うに起動した場合と、その間にfile_175.cバージョン)、file_100.cとfile_200.cをマージし、file_150.cに出力を保存します。次のステップでは、file_150.cとfile_200.cをfile_175.cにマージします。

ほとんどのバージョンの変更を選択したい場合は、そのファイルを2回指定して自動的に選択された変更を3ウェイマージします(共通ベースを持つ場合は、 3ウェイマージ)。

KDiff3は私が強く推奨する素晴らしいツールです。

+0

ありがとうございました。私はすでにこのように考えています。私はコードを2回以上通す必要がないようにしようとしていました。また、多くのファイルが関わっているので、手動で各ファイルを開く必要はありません。変更されたファイルのリストをプルするスクリプトを作成し、kdiff3で1つずつ開くことができます。これは、より良い答えが得られない限り、私が行くつもりだと思う方法です。 – SubOne

関連する問題