1

2 つのブランチにあるはずのコードを書きたい場合、2 つのブランチで同時に作業できるかどうかを知りたいです。そのため、変更をコミットすると、実際には両方のブランチが更新されます。

例えば ​​:

私のブランチAのコードはこれです

print "I like cake"

そして、私のブランチBのものは

print "I love bananas"

しかし、私はそれらの両方に次のコード行を持たせたいと思います:

print "Everyone loves stackoverflow"

本当にブランチ A に書き込んでコピーし、B をチェックアウトして貼り付ける必要がありますか?

2 つの異なるブランチに変更を適用することはできませんか?

4

1 に答える 1

2

2 つのブランチで同時に作業したい場合は、最初から別々のブランチを用意する理由を真剣に考える必要があります。ブランチは通常そこにあるため、他のコミットに干渉しないコミットを分離しています。

そうは言っても、ブランチ A でコミットが完了したら、B でコミットをチェリーピックすることもできます。これにより、他のブランチでコミットが再適用されます。git cherry-pick Aつまり、最上位のコミットを選択してA、現在のブランチに再適用します。

†問題は、ブランチ B に存在しない行が削除されている diff を追加しようとするprint "I like cake"ため、パッチが失敗し、チェリーピックも失敗し、競合が発生することです。そして、それは実際に理にかなっています: Git は、これらの 2 つのケーキ/バナナ愛の行が実際に互いに関連していることをどのように認識すればよいのでしょうか?

于 2013-04-16T08:29:33.897 に答える