程序集版本中使用SVN版本号自动生成方法详解

转载 2015年05月13日 09:58:58

本节和大家讨论一下程序集版本最后一位使用SVN版本号的自动生成方法,这里就向大家简单介绍一下,欢迎大家能和我一起学习SVN版本号的相关知识。
使用SVN进行源代码版本控制时,我们希望能够快速找到每个发布版本对应的源代码版本,现在可以通过在程序集的版本信息中增加SVN源码版本信息的方式来实现我们的要求。
现在我们定义每个程序集的版本信息的最末段表示SVN的源码版本。详细定义如下:
程序集版本号分为4段,例如1.0.4.23。
第一段为主版本号,项目一但启动则不会更改。
第二段为次版本号,在项目功能做较大调整时增加,增量为1。
第三段为修订版本号,通常在解决缺陷或者细微功能变化时增加,增量为1或者2。该版本号分奇数和偶数两种。奇数表示测试版本,偶数表示稳定版本。
第四段为SVN源码版本号,该版本号通过脚本自动生成。
使用脚本自动生成SVN版本号的先决条件:
安装TortoiseSVN;
源代码在SVN版本管理控制之下。
修改项目设置,使之能够自动生成SVN版本号:
修改Properties\AssemblyInfo.cs文件,将程序集版本信息的最末一段改为WCREV。并增加一行”//最后发布时间:WCDATE
例如:
[assembly:AssemblyVersion(“1.1.0.WCREV”)]
[assembly:AssemblyFileVersion(“1.1.0.WCREV”)]
//最后发布时间:WCDATE
将AssemblyInfo.cs文件重名为AssemblyInfo.tpl,并添加到源代码管理。
从源代码仓库中删除AssemblyInfo.cs,并排除它,使其不受版本管理。
添加本文中的GenerateAssemblyInfo.bat文件到Properties目录中,并添加到源代码管理。
修改项目属性,在生成事件的预生成事件命令行中添加以下命令。
(ProjectDir)\Properties\GenerateAssemblyInfo.bat""(ProjectDir)”.\Properties\AssemblyInfo.tpl.\Properties\AssemblyInfo.cs
注意:
在编译之前记得提交你的更改和更新别人的更改,这样才能确保版本号的正确。
今后要对程序集信息进行修改时,请对AssemblyInfo.tpl文件进行修改。
如果生成的AssemblyInfo.cs文件出现中文乱码,打开AssemblyInfo.tpl,在文件->高级保存选项中将文件编码改为UTF-8即可。本节介绍SVN版本号问题完毕。
GenerateAssemblyInfo.bat文件下载地址:GenerateAssemblyInfo.bat

利用SVN实现自动版本号生成

以 vc6 为例, 文件的版本信息保存在 rc 文件. 编译成 res 文件, 然后和其他 obj 一起 link. 现在的思路就是. 编辑 rc 文件, 将版本号比如 2.2.4.0 改成 2.2....
  • wzsy
  • wzsy
  • 2015年05月07日 17:15
  • 2626

工具——基于SVN自动生成版本号的方法

基于SVN自动生成版本号的方法 1. 生成一个名为autover的项目     注意项目的Properties文件夹下有一个名为AssemblyInfo.cs的文件,autover程序的版本号就...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

利用SVN实现自动修订版本号生成

自:http://hi.baidu.com/comeon010/blog/item/67c5669bfa759eb8c8eaf42a.html SVN是当前比较流行的版本控制软件,下面主要介绍通...

c#:SharpSvn关于SVN操作

下载SharpSvn 1.8 在工程里引用其中的 SharpSvn.dllUpdatepublic static void SvnDownload() { using (SvnClient ...

VS下 C#项目使用SVN版本号

为了实现C#项目中的SVN版本控制,我找了许多资料,然后在实际使用中又简化了下,只需要一份模板文件以及VS项目中生成前后事件的一些设置即可。 在C#项目中,记录程序版本的是AssemblyInfo....

用 CMD 脚本获得当前 svn 目录下各文件及目录的最大 revision 号

此文版权属于作者智勇,任何人、媒体或者网站转载、借用都必须征得作者本人同意 @echo offrem 版权所有 智勇set /a REVISION_NUMBER=1set OWNER_NAME=?fo...
  • lzy0168
  • lzy0168
  • 2008年04月03日 14:30
  • 1297

自动化的在程序中显示SVN版本

有时候会有这样的情况,策划拿着应用过来提一个bug,但我们却不好确定策划的手机上装的应用对应的是那个代码版本。 为了解决这个问题,我们希望能在应用上显示出当前应用所对应的代码版本,即svn版本。 ...

svn常用命令行和批处理

      在进行大量svn更新和多个工程联合编译时,如果是对你来说是一件经常重复做的事情,譬如更新代码编译版本;更新代码,编译版本并升级之类的重复性很高,枯燥而且容易出错的事情,使用批处理来统一管理...

C#下每次build自动版本号更新

AssemblyInfo.cs中这样 [assembly: AssemblyVersion("1.0.1.*")] 最后一个*的意思是每次build都变,但是不是增加1 . 如果...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:程序集版本中使用SVN版本号自动生成方法详解
举报原因:
原因补充:

(最多只允许输入30个字)