windows下实现svn提交后自动生成版本信息文件

问题现象:程序的版本信息保存在version.h中,每次需要手动去添加svn版本很麻烦

问题分析:可以通过自动生成的方式来实现

问题解决:

1、使用svn info将版本信息搜集,使用findstr来筛选信息

2、echo结果到version.h

3、设置svn hook,当有提交动作后,自动执行1 2步编写的脚本指令

问题经验:

1、svn info出的信息是中文:把subversion 目录 C:\Program Files\SlikSvn\Share\Locale\zh_CN\LC_MESSAGES\subversion.mo 文件删除掉后,svn返回都使用了默认的英文,findstr也能找到对应信息

2、echo输出到version.h有误,先>删除之前的内容,再用>>来追加想要的内容

3、svn hook可能会存在失败的可能,可以使用pre-update选项

问题代码:

@echo off
echo #ifndef APP_VERSION_H_ >  ./Includes/app_Version.h 
echo #define APP_VERSION_H_ >> ./Includes/app_Version.h 
for /f "delims=" %%i in ('svn info ./ ^| findstr "Rev:"') do set rev=%%i
set ver=%rev:~18%
echo %ver%
#echo #define VERSION "%ver%" >> ./Includes/app_Version.h 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值