![我应该如何创建 Debian 包的本地分支?](https://linux22.com/image/493758/%E6%88%91%E5%BA%94%E8%AF%A5%E5%A6%82%E4%BD%95%E5%88%9B%E5%BB%BA%20Debian%20%E5%8C%85%E7%9A%84%E6%9C%AC%E5%9C%B0%E5%88%86%E6%94%AF%EF%BC%9F.png)
我希望维护一个 Debian 软件包的本地分支。我需要修补一个错误,该错误最终将在官方软件包中修复,但需要一段时间。
如何创建 .deb 包以及如何使用它来在本地使用我的错误修复?
有问题的包包含一些脚本文件。
答案1
这取决于是否有公开可用的 git 或 subversion 存储库。如果有,使用 git 创建官方存储库的分支可能很有意义。
除此之外,如果幸运的话,该软件包使用了类似 dpatch 或 quilt 的东西,所以您只需将补丁保存在 debian/patches/ 中即可。
如果你真的不走运,每次发布新软件包时,你都必须手动更新补丁。无论如何,使用 git 并导入每个新版本可能是值得的。
构建 debian 包时,请确保已安装 build-essential 和 devscripts 包。
要实际进行更改,请运行
# apt-get source foo
然后进入 foo-1.2.3 目录并进行更改。
然后运行
# debuild -us -uc -b
这将创建包。这将立即构建或告诉您需要先安装的依赖项,然后再重试。构建的包最终将位于源上方的目录中。
我强烈建议在 debian/changelog 文件中更改软件包版本号,这样您就不会将本地构建的软件包与原始软件包混淆。您可以查看 dch 工具,以便更轻松地编辑此文件。