[英]How to patch source files
我正在尝试使用此处提供的文件修补dmenu: http ://aur.archlinux.org/packages.php?ID = 27334
我不知道该怎么做,我已经读过我应该做patch file-to-patch the-patch
,但在提供的补丁中有涉及多个文件。 我已尝试手动修补,但我失败了,它将无法编译。
实际上,它是patch < the_patch
或cat the_patch | patch
cat the_patch | patch
。
您可能需要使用-p<n>
选项,该选项用于去除修补程序中存储的路径名段。 例如,如果补丁是从源树上方的一个级别创建的(就像您将一棵树与另一棵树区分开来),并且您想要从源树中应用补丁,则需要-p
。
另一个有用的选项是--dry-run
。 这将像应用补丁一样,但不会修改任何文件。 用于测试是否正确使用-p
选项以及查看补丁是否应该干净地使用是一件好事。
我通常做的是更改源树的根,然后运行cat <file> | patch -p1 --dry-run
cat <file> | patch -p1 --dry-run
。 如果我收到有关未找到文件的错误,我将切换到-p0
。 一旦其中任何一个工作,我删除--dry-run
并实现它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.