2017-08-30 19 views
1

ブランチAをブランチBにマージしたいのですが、ブランチAにはブランチBに必要なファイルを削除するコミットがいくつかあります。 git merge Aを使用すると、ブランチBでファイルを削除するだけです。ブランチAをBに適切にマージするにはどうすればいいですか?git merge branch、コミットを無視する

+1

代わりに対話型リベースを実行します。スキップまたはスカッシュするコミットを選択できます。 https://git-scm.com/docs/git-rebase – jonrsharpe

+1

これらの特定のコミットはファイルを削除するだけか、それらのコミットには他の変更がありますか?あなたは@jonrsharpeのようにすることもできますし、チェリーは 'git cherry-pick <オプションをコミットするオプション>' 'https://git-scm.com/docs/git 'を参照してください。 -cherry-pickいくつかの例があります(最後に) –

+0

@code_fodder良い点;リベース中に特定のコミットを編集することもできます。その場合は、その一部だけでも可能です。 – jonrsharpe

答えて

0

ヒストリにマージコミットを行いたい場合(例えば、プロジェクト内で情報をどのように移動させるかを追跡する場合)、git merge --no-ff --no-commit Aを使用することもできます。このコマンドは、コミットが作成される直前にマージ・プロセスを一時停止し、コードをチェックしたり、このコミットに追加の変更を適用したりする機会を与えます。

次に、git reset -- <file>git checkout -- <file>を使用して、削除したファイルを復元できます。

関連する問題