git - 从无到有创建一个 git diff

标签 git diff patch review-board

我正在尝试创建一个补丁文件以通过 reviewboard 使用.
这将是初始补丁。

diff -ruN --exclude=.git empty_dir working_dir > mypatch_00.patch 有效,但我收到“所选文件似乎不是差异文件”。错误。

有什么方法可以使用 git-diff 或 diff 让它工作吗?谢谢

最佳答案

如果你想为你的初始提交获取差异(也许我误解了你的问题),你可以使用

git show COMMIT

或者将其作为文件获取:

git format-patch -1 COMMIT

COMMIT 是这次提交的修改。如果这也是您当前的提交,则您根本不必指定它。

但是,如果您的提交不是初始的,并且您想获得历史的完整差异,则需要先创建空分支:

git checkout --orphan empty         # Create orphaned branch
git read-tree --empty               # Remove all files from index
git commit --allow-empty -m 'Empty' # Initial commit

现在你可以对空分支进行完整的比较:

git diff empty..master

关于git - 从无到有创建一个 git diff,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14564034/

相关文章:

git - 如何使用 pip 卸载 git repo?

bash - 如何比较两个巨大的文本文件(每个超过 50GB)?

Javascript/Node.js : data patching scheme

java - 如何批量运行多个请求?

git - 没有冲突的 merge 是否等同于没有冲突的 rebase ?

本地提交后 Git pull

ios - Phonegap Cordova 插件在构建时删除

git - diff 返回相同文件的整个文件

random - 如何随机选择 netlogo 中具有较高海拔的邻居补丁

patch - 反向xdelta补丁