記事を書いた経緯
gitを使って業務をしていた際に、「別ブランチの特定のコミットのみを反映させたい!」という状況になったため、備忘録も兼ねて。
エディタはvisual studio codeを使用してます。
cherry-pickコマンド
gitで特定のコミットを反映させたい場合には『git cherry-pick
』コマンドが使えます。
おおまかな流れとしては、以下のような感じです。
①取り込みたいブランチへ移動
↓
②ログを表示させ、コミットidをメモる
↓
③『git cherry-pick
』を打つ
次項ですこし詳しめに説明します。
実際の使い方
①取り込みたいコミットのあるブランチへ移動
visual studio codeでは、ブランチ移動の際はコマンドを打たなくてもUIからブランチを切り替えることができます。
次に変更したい ブランチ名をクリックします。今回は [sample] をクリックしています。
さっきの左下の部分が選択したブランチ名に変わっていたらOKです
②『git log』でログを表示させ、コミットidをメモる
取り込みたいコミットのあるブランチに移動できたら、ターミナルに『git log
』コマンドでログを表示させます
コミット情報が表示されている中で、取り込みたいコミットの青枠で囲った部分をコピーしておきます。
③自分のブランチへ戻り、『git cherry-pick』コマンドを打つ
①の容量で自分のブランチへ戻ったら、ターミナルで以下のコマンドを打ちます。
さきほどコピーしたコミットidを使います。
git cherry-pick 取り込みたいコミットid
その後自分のブランチで『git log
』し、取り込みたいコミット情報が表示されたら完了です。
『git cherry-pick』を取り消したい場合
「やっぱり元に戻したい!」という場合は、自分のブランチで以下のコマンドを打ちます。
git cherry-pick --abort