1

間違ったブランチで開発を行ったという問題があり、変更を取得/チェリーピックして、別のブランチに配置/リベースしたいと考えています。変更されたテキスト行のみを取得したいだけで、それ以上は何もありません!

ここに私の問題を説明する例があります:

C3 <-- Branch 1
|
C2    C4 <-- Master
|      |
C1 ----|

各コミット (C1、...、C4) には、次の内容のテキスト ファイルが含まれています。

C1:
A

C2:
A
B

C3:
A
B
C

C4:
A2

コミット C2 と C3 の間の変更をコミット C4 に入れたいと思います。これは、変更された行 (C) を取得してコミット C4 に配置することを意味します。新しいコミット C5 のテキスト ファイルは次のようになります。

C5:
A2

C

マスターブランチに入力すると

git cherry-pick C2..C3

競合が発生し、メルドが開き、次のビューが表示されます。

LOCAL:         BASE              REMOTE
A2                               A
                                 B
                                 C

これは私が望むものではありません。C2 と C3 の違いだけを確認したい。したがって、マージがはるかに簡単な次のようになります。

LOCAL:         BASE              REMOTE
A2                               

                                 C

これは Git で可能ですか、またはこのワークフローをサポートするマージ ツールはありますか? それは物事をとても簡単にします。

4

0 に答える 0