我正在使用git的项目中工作。每当我进行更改时,我都会向主要开发人员提交补丁,然后再提交并提交。到目前为止,一切都很好:
git diff > somepatch.patch
但是当我创建新文件时,上述命令不起作用。它创建了一个补丁,其中不包含我创建的新文件。我试图像这样将它们添加到git中:-
git add path/to/the/file.qml
但是这也不起作用。
答案 0 :(得分:3)
如果您已经将更改添加到了仓库中,则除非您使用git diff
参数来请求已添加到索引中的更改,否则它们不会出现在--staged
输出中。
git diff --staged > your.patch
因此,如果您混合了已添加和未添加的更改,则甚至可以使用
git add .
然后进行比较。
作为一个旁注,另一种选择是取消所有内容的发布并在没有--staged
的情况下进行经典的比较:
git reset HEAD
git diff > your.patch