我们的构建服务器通过 构建 ubuntu 软件包 (*.deb) dpkg-buildpackage
。服务器通过 git 检出源代码并通过 运行构建make <target>
。源目录包含debian/
dpkg 配置文件所在的子目录。
我想将内部构建计数器编号添加到当前软件包版本,并进一步设置软件包文件名,但dpkg-buildpackage
不让我控制结果的样子package_version_arch.deb
。我该如何实现?
答案1
看一下git-buildpackage:
自定义快照编号
如果快照号的自动递增不符合您的需要,您可以给出任何计算结果为正整数的 Python 表达式来计算新的快照号:
gbp dch -S -a --snapshot-number=1 gbp dch -S -a --snapshot-number='snapshot + 2' gbp dch -S -a --snapshot-number='os.popen("git-log --pretty=oneline | wc -l").readlines()[0]' gbp dch -S -a --snapshot-number=`git-log --pretty=oneline debian/0.3.3 | wc -l`
您还可以将快照编号计算添加到
gbp.conf
:[DEFAULT] snapshot-number = os.popen("git-log --pretty=oneline | wc -l").readlines()[0]
答案2
您可以在控制文件 sampkg/DEBIAN/control 中更改版本号
控制文件是 Debian 软件包的核心;它包含所有相关元数据。软件包名称、版本、支持的架构和依赖项等信息都包含在此文件中。
Package: sampkg
Architecture: all
Essential: no
Section: web
Priority: optional
Depends: python (>=2.3)
Maintainer: Swaminathan Mathivanan
Description: Sample package.
最终的 pkg 名称将是 sampkg_1.0.0_全部.deb