git cherry-pick を使用します
git cherry-pick [取り込むコミットID]
範囲を指定して連続したコミットを取り込むには、以下のコマンドを使用します。
git cherry-pick <開始コミットID>^..<終了コミットID>
左側が古いコミット、右側が新しいコミットです。
また左側には最後 ^ をつけると、開始コミットID 自身も取り込まれます。つけない場合はその次のコミットから取り込まれます。
例: a1b2c3dのコミットからd4e5f6gまでを取り込む
git cherry-pick a1b2c3d^..d4e5f6g
git cherry-pick <コミットID1> <コミットID2> <コミットID3>
かなりの確率でコンフリクトは起こると考えておいた方が良いのでその対応を知っておきましょう。 コンフリクトが起きると次のようなログ出力となります
Auto-merging local/resources/xxxx.cs
Auto-merging local/resources/bbbb.cs
CONFLICT (content): Merge conflict in local/app/Http/Requests/cccc.cs
CONFLICT (content): Merge conflict in local/app/Http/Controllers/dddd.cs
CONFLICT (content) となっているファイルを修正、保存します。
その後に修正したファイルを追加してコミットします。
git add local/app/Http/Requests/cccc.cs
git add local/app/Http/Controllers/dddd.cs
コミットします。コメントの先頭に [cherry-pick] → をつけてわかりやすいようにします。(書き方はなんでもokです)
git commit -m "[cherry-pick] → [fix] ○○○の不具合を修正"
とします