假设我在Origin / master repo之前提交了7个提交。我想创建一个补丁,其中包含已更改的补丁中的特定文件,而不是所有文件。或等效项从已更改的修补程序中排除特定文件。我怎样才能做到这一点?
答案 0 :(得分:55)
您可以通过列出命令末尾的路径(git diff
之后)来限制--
的输出,以避免路径名和分支名之间发生任何潜在的冲突。例如,您可以执行以下操作:
git diff origin/master HEAD -- app/models/region.rb doc/ > changes.patch
...生成仅显示特定文件和特定目录中的差异的补丁。
答案 1 :(得分:32)
您可以在补丁中包含以下文件:
git format-patch <rev> <files...>
实施例
git format-patch HEAD^^^ Makefile
将为您提供三个文件0001- [commit] ... 0003- [commit]仅包含Makefile。