分享
 
 
 

[原创]每日构建实践篇(一)

王朝vc·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

看了Joel Spolsky的《软件开发成功12法则》和《Daily Builds are Your Friend》,对于每日构建的必要性和实用性都深有感触。于是为自己的项目添加脚本以实现快捷的每日构建,并记述这个尝试的整个过程,方便以后参考。

所谓的每日构建就是每天至少一次的重新创建整个工程,每日构建本身只能算是一个保护代码有效性和快速修改快速出品的手段,但是要想快速将项目成果由代码构建成最终出品形式(如安装程序,CD镜像等)就需要一套工具的支持还有相应脚本的设定,每日构建需要做的工作正是实现这个过程。

每日构建过程中有很多环节,基础流程是从源代码管理系统中取出最新版本的源码,然后通过编译器编译,最后使用安装程序打包。我首先由从源代码管理系统中取出最新版本的源码开始。

这里讲解的是Visual SourceSafe的流程。

VSS本身有Command Line模式,按照帮助文档中的说法,Command Line的命令可以实现VSS界面程序的所有功能。而我现在只需要他的Get(获取最近版本),命令行如下:

ss get $/vss_code -I-Y -R -GLc:\daily_build_code -O@mycode.log

Ss

VSS Command Line模式的启动程序名

Get

获取最近版本的命令名称

$/vss_code

希望获取的程序路径,该路径可以通过VSS窗体程序的右键属性功能获取

-I-Y

对提问回答Y,如果没有这个参数则运行命令会在提问时等待用户输入。回答N,是-I-N

-R

递归获取,会把该目录下的所有子目录都取出来

-GLc:\daily_build_code

用来指定获取源码的路径,如果不设置则使用VSS的默认工作目录

-O@mycode.log

指定所有信息输出到log文件

注意1:这里指定了工作路径,一般来说为了构建能够不受原有环境的影响,最好每次构建都重新建立路径。如果有可能应该专门提供一台机器用来做每日的构建。

注意2:如果不指定log文件的绝对路径的时候,log文件会被建立到当前路径,如果你频繁的使用cd,md命令很可能会使这个位置不确定,所以建议使用绝对路径来指定log文件的位置。

以上的命令虽然是用来获取最近版本的,但在现实中还需要设置当前的环境变量。

如果你的VSS的服务端不在本机,需要指定服务路径,如下:

set ssdir=\\my_vss_server\vss_code

还需要指定用户名和密码,如下:

set ssuser = snail

set sspwd = chinaos.com

另外,如果你没有将VSS路径加入系统设置中,需要指定VSS路径:

set path=c:\program files\microsoft visual studio\common\vss\win32

最后要注意的是,因为指定了新的工作路径,你需要保证该目录的有效性。

这些工作都做完,得到的脚本用批处理表现出来就像下面的样子:

// vss.bat

set ssdir=\\my_vss_server\vss_code

set ssuser=snail

set sspwd = chinaos.com

set path=c:\program files\microsoft visual studio\common\vss\win32

c:

cd

md daily_build_code

ss get $/vss_code -I-Y -R -GLc:\daily_build_code -O@mycode.log

VSS Common Line提供的其他命令和参数,请参看VSS的帮助文档

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有