使用命令"git format-patch origin/master --stdout"创建了一个空的补丁。

4

我正在查阅Drill(开源github项目)的文档,以便创建补丁

我发现了这个命令:

git format-patch origin/master --stdout > DRILL-1234.1.patch.txt

我做了一些更改。我通过git status验证了我的更改。我修改了一个.java文件。我尝试使用上述命令创建补丁。
我打开了DRILL-1234.1.patch.txt,但是它是空的
然后我尝试git add <modified file>并再次尝试相同的命令,但是补丁文件仍然是空的
我错过了什么吗?

2个回答

3

为了创建路径,您必须有一些内容(提交)
提交您的更改,然后创建补丁

git format-patch HEAD~X // x is the number of commits you need

2
Git的format-patch命令可以从提交记录中生成补丁文件。因此,您需要先执行git commit命令。此外,我认为--stdout选项并不是您想要的功能。
如官方文档所述(https://git-scm.com/docs/git-format-patch),输出文件的名称将会被打印到标准输出中,如果指定了--stdout选项,则不会打印文件名。
对于每个提交,format-patch都会创建一个补丁文件。它不会输出文件本身,而是输出每个补丁文件的名称。请保留原有的HTML标签。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接