我已经在github上分叉了一个项目,并且需要在我分叉后以diff格式进行一系列更改.
如果你想知道 - 我已经分叉了Apache httpd,我正在更改核心中的一些代码.目前我没有提交任何更改,运行git diff,并在RPM构建过程中将其输出用作针对vanilla httpd源的补丁.当然,这是错误的,但我不知道如何正确地做到这一点.我所知道的是我最终需要一个差异.
在本地仓库中添加原始GitHub仓库(您已经分叉的仓库)作为远程仓库.
(git remote add mainRepo github_url
)
git fetch mainRepo
从原始的"mainRepo"获取最新的更改.
git log HEAD..mainRepo/master
将显示最新的mainRepo主分支与当前分支之间的所有更改.
git diff HEAD..mainRepo/master
会以diff格式显示它.
在learn.GitHub中:
git diff mainRepo/master...HEAD
会列出你所分享的所有更改mainRepo
:
这不会比较最后一个'主'分支快照和最后一个'dev'快照 - 而是将两者的共同祖先与'dev'进行比较.这将告诉你自分支点以来发生了什么变化.
这是一个古老的问题,但是我发现了一个非常好的方法,可以直接从Github获取补丁或diff文件。
当您上车时,会有一个“比较”链接。使用它,您将进入比较视图。
例
https://github.com/luisgoncalves/xades4j/compare/master...beat2:master
现在,您可以在此url的末尾手动添加“ .diff”或“ .patch”,然后直接在浏览器中获取文件。
例
https://github.com/luisgoncalves/xades4j/compare/master...beat2:master.diff
来源:https : //github.com/blog/967-github-secrets