对Web应用程序/网站进行版本控制的策略是什么?
我注意到在Beta中,页脚中有一个svn修订版号,这对于在一个存储库上使用svn的应用程序来说是理想的。但是如果你使用外部或不同的源代码控制应用程序版本分开文件怎么办?
对于桌面应用程序来说似乎很容易,但我似乎无法为asp.net Web应用程序找到合适的版本控制方式。
NB 我不确定我的问题是否完全清楚。
答案 0 :(得分:4)
我认为你要找的是这样的:How to auto-increment assembly version using a custom MSBuild task。它有点旧,但我认为它会起作用。
答案 1 :(得分:2)
对于我的大型应用程序,我只使用增量版本号id(1.0,1.1,...),我存储在主文件的注释中(通常是index.php)。
对于网站,我通常只有一个修订号(1,2,3,...)。
答案 2 :(得分:2)
我倾向于首先坚持基本整数(1,2,3),当事情变大时,转向有理数(2.1,3.13)......
尝试一次使用水果,适用于小型办公室。哦,'香蕉'释放? 在角落里看着“是的......现在已经很老了......”
不幸的是,当开发团队成长时,混乱开始出现,是橙色,普通话还是Tangelo? 看起来确定。你是什么意思“在里面腐烂?”
......但是说实话。将一个单独的存储库设置为主服务器,开发在各种存储库中进行。对于每个预定版本,所有内容都会检入主存储库,以便在出现问题时快速回滚。 (我假设dev / test / production都是独立的服务器,dev永远不允许接触生产或主存储库....)
答案 3 :(得分:0)
我维护一个Web应用程序系统,其中包含各种组件,这些组件位于单独的SVN存储库中。为了能够对整个系统进行版本跟踪,我有另一个SVN repo,其中包含所有其他repos作为外部引用。它还包含用于部署整个事物的安装/设置脚本。通过该设置,“元库”的SVN版本号可能用于对整个系统进行版本控制。
在另一种情况下,我通过SVN keywords将SVN修订版包含在一个没有其他用途的类文件中(以避免关键字替换破坏我的代码的风险)。该文件中的类包含一个由SVN操纵并由类方法解析的字符串变量。
两种方法的不便之处在于修订号不会通过外部(方法1)或其余代码(方法2)的更改自动更新。
答案 4 :(得分:0)
在内部开发期间,我使用里程碑数字(M1,M2,M3 ......)。发布后,我可能只会更新日期(“2009年1月更新”)。