zoukankan      html  css  js  c++  java
  • 怎样在VS2005,VS2008下里用SVN的SubWCRev自增修订号 .

    为了使软件版本号的最后一位,即修订号与由svn管理的代码库修订号保持一致并自动更新,可以利用VS2005的生成事件和 svn 中的 subwcrev 程序实现,步骤如下:
     

    工具/原料

    • Visual Studio 2005
       
    • SVN 客户端( TortoiseSVN 或其他 )
       
     

    步骤/方法

    1. 编写一个模板文件,比如取名为 version_template.h,内容如下

      #ifndef _VERSION_H_
      #define _VERSION_H_

      #define VER_MAJOR 1
      #define VER_MINOR  0
      #define VER_REVISION $WCREV$

      #endif //!_VERSION_H_
       
    2. 找到 subwcrev.exe 可执行文件,一般在 svn 客户端的安装目录下,比如 TortoiseSVN 是在其安装目录的bin文件夹下。这里,笔者将 subwcrev.exe 复制到了代码工程目录下,方便使用。
       
    3. 在VS2005的项目属性页->预生成事件->命令行中添加一句:

      $(SolutionDir)subwcrev.exe $(SolutionDir) $(SolutionDir)srcqmlvversion_template.h $(SolutionDir)srcqmlvversion.h



      SubWCRev 调用语法:
      SubWCRev WorkingCopyPath [SrcVersionFile DstVersionFile]
       
    4. 这样,代码编译通过后,预生成事件被触发,VS2005 调用SubWCRev.exe程序,替换version_template.h中的宏$WCREV$为当前的svn修订号,并另存为 version.h文件,version.h 会类似于:

      #ifndef _VERSION_H_
      #define _VERSION_H_

      #define VER_MAJOR 1
      #define VER_MINOR 0
      #define VER_REVISION 2821

      #endif //!_VERSION_H_
       
    1. 在程序中需要显示版本号的地方,引用 VER_REVISION 宏即可。
  • 相关阅读:
    __ATTRIBUTE__ 你知多少?【转】
    mount源码分析 【转】
    linux下共享内存mmap和DMA(直接访问内存)的使用 【转】
    mmap DMA【转】
    内存映射MMAP和DMA【转】
    进度条,随机数---demo笔记【原创】
    Linux内核抢占与中断返回【转】
    内核随记(三)--同步(1)【转】
    内核随记(三)--同步(2)【转】
    理解Linux中断 (1)【转】
  • 原文地址:https://www.cnblogs.com/For-her/p/3899349.html
Copyright © 2011-2022 走看看