我想在我的 AssemblyFileVersion 属性中使用当前的 Subversion 修订号,以便在最终编译的 dll 中包含它。
我用过 MsBuild Community Task library从我的部署脚本中读取修订号并更新 AssemblyInfo - 这有点管用,但是 ...
当我有更新的项目和当前版本号时,例如 100。我运行脚本,这将更新 AssemblyInfo 和最终的 dll,其中 100 作为属性。当我检查这些新的 AssemblyInfo 文件时,我将获得一个新的修订号 (101)。
那么问题是,如果我看到一个具有特定版本号的 dll 并且想重建该 dll,我需要的实际版本实际上是我看到的版本号之后的版本 ...
如何改进这个过程?
最佳答案
是否可以使用 RCS Keywords ?
其中一个关键字是 $Revision$
。这会自动扩展为 $Revision:xxx$
,其中 xxx
是每次执行 svn checkout
或 svn update 时的 Subversion 修订号
。
您必须在程序集文件中设置属性 svn:keywords
才能使其工作:
$ svn propset svn:keywords Revision Assembly.cs
我一直这样做,但对于运行我们持续构建软件的构建服务器。这需要一些设置,但它会自动构建软件,设置正确的版本号,甚至在每次有人提交时部署软件。
顺便说一下,我认为你正在使用 AnkhSVN作为 VisualStudio 的 Subversion 集成。
关于visual-studio - 如何在 Visual Studio 构建中设置 Subversion 修订号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7505538/