Content management system 解决方案部署、CM、InstallShield

Content management system 解决方案部署、CM、InstallShield,content-management-system,versioning,installshield,packaging,Content Management System,Versioning,Installshield,Packaging,人, 我们有4或5个实用程序与我们的应用程序一起工作。这些实用程序可以是.bat文件,也可以是VB应用程序、PowerBuilder等。我正试图在源代码管理中管理这些实用程序,并试图找到一种更好的方法来为它们分配版本。现在,开发人员使用版本控制的元数据——特别是标签——来存储工具的版本号 我的目标是为每个实用程序提供单独的InstallShield软件包,并提供一种简单的方法来管理和分配这些软件包的版本号 您会推荐一个包含信息的单独的.ini文件,还是将信息存储在InstallShield.is

人,

我们有4或5个实用程序与我们的应用程序一起工作。这些实用程序可以是.bat文件,也可以是VB应用程序、PowerBuilder等。我正试图在源代码管理中管理这些实用程序,并试图找到一种更好的方法来为它们分配版本。现在,开发人员使用版本控制的元数据——特别是标签——来存储工具的版本号

我的目标是为每个实用程序提供单独的InstallShield软件包,并提供一种简单的方法来管理和分配这些软件包的版本号

您会推荐一个包含信息的单独的.ini文件,还是将信息存储在InstallShield.ism文件中,或者只使用版本控制工具中的元数据信息


更新:

我喜欢猎户座这个主意。不过我有一个顾虑。增加版本号的脚本。。。它不可能足够智能,以增加主要数字等权利。e、 g.如果其中一个UTIL版本为1.2.3,而我们的新版本为2.0.0。脚本可能无法处理此问题


我认为这与我们的分支技术有很大关系——我们没有分支技术。人们认为,由于UTIL非常小,源代码可能不需要分支。

我在上一份工作中管理了我们的构建系统,这似乎与您的要求有一些相似之处

<>有30个C++项目需要编译,各种.NET/java的事物和奇数的Perl脚本。< /P> 这一切都是在我们的构建机器上使用NAnt构建的——如果我今天这样做,我会使用NAnt,但想法是一样的

我们基本上有一个自动递增的版本号,它存储在存储库根目录下的version.txt文件中

每次我们进行构建(每晚自动完成,或者在必要时按需完成)时,脚本都会增加这个数字,并将文件检查回源代码管理中

所有其他应用程序都引用此文件作为版本号,或者对于不支持这样工作的内容,脚本将设置环境变量或执行其他解决方法

  • 我很确定我们的installshield程序引用了一个环境变量作为其版本号,但我们不赞成使用它们,因为installshield确实很糟糕
  • 对于VisualStudio,grep/replace.csproj文件中的编号,并将其签回

希望这能为您提供一些想法,尤其是PowerBuilder有一个很好的技巧,可以将ini文件中的版本号合并到已编译的应用程序中

详情如下:


我们在源代码管理中有一个ini文件,该文件存储构建编号,其值在构建脚本中用于确定成功构建后应用于源代码树的标签。非常适合我们的需要。当我们进行分支时,我们必须手动启动文件以增加适当的数量。

使用版本控制系统中的元数据应该会使事情更简单。这是您的开发人员已经使用系统的方式。没有要维护的其他文件。我的个人经验告诉我,卫星应用程序的版本与主应用程序的版本相同。K.I.S.S