如果我通过 packer 或 pacaur 安装 git-package,那么它将拉取存储库的当前源代码树,编译并安装它。
但如何处理更新呢?有没有特定的方法来升级我的所有 AUR-Git 软件包?
答案1
以前,VCS PKGBUILDS 包含一个更透明的函数,用于克隆数组中标识的 git 存储库source
,因此它们的工作方式更加明显。处理这些包的方式发生了变化makepkg
,由其中一位记录pacman 开发者在这里,使整个过程变得更加简单。
本质上,同样的事情仍然会发生:远程存储库被拉出,然后启动标准构建过程。
更新是您的责任。包 ( pkgver
) 的版本号不会在 AUR 中更新,除非维护者由于上游的一些重大更改而需要上传新的 PKGBUILD。因此,如果您想继续跟踪开发情况,您应该监控该项目(例如通过 RSS)并定期重建它,以继续享受尖端软件的乐趣。
当您确实希望更新时,只需重新输入目录(大概是您已保存的目录)并重建包即可。我建议使用makepkg -ci
:这将确保在随后的重建中您有一个干净的$srcdir
.
如果您的 AUR 帮助程序在完成时删除了构建目录,那么只需重新安装包即可从以下位置构建它:$HEAD.
所有这一切都假设软件包维护者已遵守VCS PKGBUILD 指南。
答案2
除了 jasonwryans 的出色回答之外:大多数 AUR 助手都有一个更新开发包的标志,即使它们pkgver
在 AUR 中没有更改。对于 pacaur,调用该标志--devel
可以与其更新操作结合使用。这将导致 pacaur 重建开发包,但前提是它们的源比已安装的包更新。--rebuild
即使您当前的软件包是最新的,提供该选项也会使 pacaur 重建开发软件包。