メインブランチには33のコミットがあり、それらはメッシュになっています。今、私はきちんと記録を維持する必要があります。そこで、機能ブランチを作成しました。これらの33個のコミットを異なる機能ブランチに分類しようとしています。では、一度に複数のコミットを選択して、関連する機能ブランチにコピーすることは可能ですか?また、cherry-pickコマンドを使用して複数のコミットを試みたときに、競合に直面しています。
git cherry-pick A B C
ここで、A、B、Cはコミットのハッシュコードです。
あなたは正しいことをします。あらすじは
git cherry-pick [--edit] [-n] [-m parent-number] [-s] [-x] [--ff] <commit>...
git cherry-pick
は左から右へコミットします。好きなように注文できます。競合がある場合、3つの選択肢があります。 git cherry-pick --quit
(チェリーピッキングを停止し、ツリーを現在の状態にする)、git cherry-pick --abort
(チェリーピッキングを停止し、ブランチを開始前の状態にリセットするgit cherry-pick
)またはエディターまたはgit mergetool
を使用してこの競合を解決してから、git cherry-pick --continue
を使用してリスト内の次のコミットに移動します。
レコードをきちんと維持する必要がある場合は、トピックブランチを作成してgit rebase -i <commit before the 33rd>
、インタラクティブなリベース。コミットを削除する手順に従います。これは、特定の厳密な順序で多数のコミットをチェリーピッキングするよりも簡単なはずです。