我在整个环境中运行Ubuntu 10.04.为了使代码部署更容易,我们正在实现一个私有的apt存储库,我们可以在其中部署代码的构建.
该存储库的要求之一是我们的QA部门将能够随时安装我们的任何版本的应用程序.
我可以在apt-repository中存储同一个包的多个版本(最好是在同一个发行版中)吗?如果没有,我可以使用哪些可能的解决方法来获得上述行为?
是的,你可以,而且你不需要做任何特别的事情.实际上,通常的Debian和Ubuntu存储库通常都有每个包的几个版本(来自oldstable / stable / testing / unstable或dapper / hardy / lucid / maverick / natty).这些发行版在每个版本的索引文件(Packages文件)中只有一个包,但您不必遵循.
当然,apt-get install myapp只会安装最新版本(除非另有配置).您可以运行apt-get install myapp = 1.42强制安装1.42版.
警告:如果所有版本具有相同的软件包名称,则不能同时安装多个版本.如果这很重要,请为每个版本提供不同的软件包名称:myapp-1.42,myapp-1.43等.Debian和Ubuntu为主要版本的库执行此操作,如果您有可执行文件链接到不同的库,则可能需要多个库(例如libcap1和libcap2),以及一些其他软件包,如内核.