2 つのブランチ (A と B) があり、ブランチ A の 1 つのファイルをブランチ B の対応する 1 つのファイルとマージしたいと考えています。
ベストアンサー1
私も同じ問題に遭遇しました。正確に言うと、同じファイルを持つ 2 つのブランチA
とがありB
、一部のファイルのプログラミング インターフェイスが異なります。2 つのブランチのインターフェイスの違いとは関係のない file のメソッドf
が branch で変更されましたが、この変更は両方のブランチにとって重要です。したがって、 branch のfile をbranch のfile にB
マージする必要があります。f
B
f
A
A
すべての変更が両方のブランチにコミットされていると仮定すると、簡単なコマンドですでに問題は解決されていますB
。
git checkout A
git checkout --patch B f
最初のコマンドは、のファイル のバージョンA
をマージするブランチ に切り替えます。2 番目のコマンドは、 のでファイルにパッチを適用します。パッチの個々の部分を受け入れたり破棄したりすることもできます。 の代わりに、ここで任意のコミットを指定できます。 である必要はありません。B
f
f
f
HEAD
B
B
HEAD
コミュニティ編集: ファイルf
がB
にまだ存在しない場合はA
、--patch
オプションを省略します。それ以外の場合は、「変更なし」というメッセージが表示されます。