web-dev-qa-db-ja.com

gitで特定のファイルを含むパッチを作成します

Origin/masterリポジトリより7コミット先だとしましょう。すべてのファイルではなく、変更された特定のファイルをパッチに含めるパッチを作成したいと思います。または、変更された特定のファイルをパッチから除外します。どうすればそれを達成できますか?

42
vasilakisfil

コマンドの最後にパスをリストすることにより、git diffの出力を制限できます(--の後に、パス名とブランチ名の間の潜在的な衝突を回避します)。たとえば、次のことができます。

git diff Origin/master HEAD -- app/models/region.rb doc/ > changes.patch

...特定のファイルと特定のディレクトリ内の違いのみを表示するパッチを生成します。

56
Mark Longair

次を使用して、パッチにファイルを含めることができます。

git format-patch <rev> <files...>

git format-patch HEAD^^^ Makefile

Makefileのみを含む3つのファイル0001- [commit] ... 0003- [commit]を提供します。

33
lars