作者:mobiledu2502868523 | 来源:互联网 | 2023-05-22 11:40
如何从github应用补丁?
我试着编译minisat,但是我遇到了两个来自clang编译的问题.
第一个问题是在这个github提交中解决的,它是从原来的github派生出来的.由于变化很小,我可以轻松地修补代码以手动工作.
第二个问题在这个github(https://github.com/niklasso/minisat/pull/17)中解决,但补丁不适用于原始源.我可以通过复制修改后的文件手动更新代码,但如果我可以将此补丁拉入我的本地目录会更好.用github可以做到吗?如果是这样,怎么办?
1> mu 無..:
github为各个提交和拉取请求提供补丁(虽然我找不到相关文档).
您只需附加.patch
到原始网址的末尾即可生成修补程序网址.
因此,请使用https://github.com/JWalker1995/minisat/commit/a8cef9d932552b2ec155d5e0d44d8fe0efa3a235.patch作为第一个,并使用https://github.com/niklasso/minisat/pull/17.patch作为第二个.
通用URL github.com/original/url/id
将github.com/original/url/id.patch
用于生成补丁.
就运行命令而言,这就变成了
将补丁下载到您的git仓库
wget --output-document=issue1.patch https://github.com/JWalker1995/minisat/commit/a8cef9d932552b2ec155d5e0d44d8fe0efa3a235.patch
wget --output-document=issue2.patch https://github.com/niklasso/minisat/pull/17.patch
应用补丁
git apply issue1.patch
检查更改,添加和提交.对补丁2重复相同的操作.
您可以查看此博客文章,获取有关创建和应用修补程序的精彩教程.
@prosseek,转到`https:// github.com/JWalker1995/minisat/commit/a8cef9d932552b2ec155d5e0d44d8fe0efa3a235.patch`并将内容保存为`1.patch`,然后转到`https://github.com/niklasso/minisat/pull/17.patch`并将内容保存为`2.patch`.之后运行`git apply --check 1.patch`和`git apply --check 2.patch`.如果你在运行`git apply 1.patch`然后`git apply 2.patch`来修改你的文件时没有出现任何错误.