你没有理解 switch 的本意
它的本意是 将工作拷贝在 trunk 和 branches 进行变换。
构建应该使用尽可能小的代码变更 便于排查问题
提交时间的限制实际上是鼓励频繁的提交。如果不是 C++ 这样构建时间很慢的项目,一般提交代码后几分钟内就可以得到结果,通过单元测试、自动化脚本和工具进行一系列检测,从很大程度上可以控制提交代码的质量。
如果是非密集型提交,比如一周只提交了一次代码,那么变更代码可能设计千行以上。这是不利于排查问题和回溯代码的,因为更多的代码意味着更多问题的集中变更,代码交叉影响的几率也更高。
daily build 实际上可以认为是一次完整的 build,因为我们项目可以分为很多子项目,子项目的 build 不需要互相影响。可以在 daily build 中做整个项目的集成测试以及耗时很长的但不要求即时反馈的测试。
此外 daily build 还可以保证在夜间的构建是一个非频繁性更改的构建,便于提交给测试人员在第二天进行测试,而不是白天频繁构建中的残次品,因为在开发人员下班前,一般都会要求尽可能签入稳定的代码。
拿个简单的比喻 : Cruise 就是武装到牙齿的骑兵 CC.Net 则一身皮甲烂枪头 Hudson 就是一个常规步兵而已 TeamCity 则是一个常规战术小队
TortoiseSVN 自带的 diff 我觉得足够用了
Draco.NET 我还真没听过,于是看了下
发现是已经死亡三年的项目,不推荐使用
没错,就是这样
当然,你也可以使用"MSBuild"这样的"外部插件",可以扩展出大部分想做的事。
但却无法获得 Haudson 的内部扩展支持。
个人以为,扩展性的东西最好使用脚本来完成,这一点,可以考虑内置 Ruby 或 Python 来办到。
一个经典的案例就是 WoW 另一个反例则是 IE(VBScript 交互,COM 支持非常不安全)
Hudson 设计上是比 CC.Net 要好很多,配置也非常友好,对自己电脑上装 Java VM 不介意的朋友可以一用,维护起来要比 CC.Net 简单很多。
[[i] 本帖最后由 Zealic 于 2009-6-25 13:57 编辑 ]
Hudson 就功能性和直观性都比 ccnet 强大
但扩展性却必须使用 java,个人非常不喜欢
虽然他本身的 java 扩展非常多
俺是 PG
配置管理也不错
那就好
问问题还是要把异常信息、日志什么的附上,不然不好诊断。
理论上可以手工完成,不过你要了解 repos 的结构。 二进制可是很麻烦的。
其实对于本地拷贝来说,占那么点磁盘空间怕什么, 如果你看哪些 history 不舒服, 完全可以 merge 以后重新在 master 开一个分支。
很遗憾,没有办法做到,否则就不叫做源代码控制管理了
本意就是保存所有修改历史,中间断一层几乎都是无法接受的。
一般用法 cd D:/work :: DO SOMETHING pushd C:/work2 :: DO something and get result popd ::USING work2's result do anything ...
说起强大 我更看好 TeamCity Hudson 也是一个不错选择,[color=Red] 但是过于 Open,让人难以接受。(我收回这句话的红色部分)
[[i] 本帖最后由 Zealic 于 2009-3-10 15:27 编辑 ]
如果需要服务端的图形化界面,可以考虑使用 VisualSVN Server
的确如此
用户名密码 是可以 任意能获取源代码的人员,推荐使用一个专门的 build user。 CCNET_WORKSPACE 这个名字可以随便取,具体公用 参考 TFS 的 WORKSPACE 的概念介绍。 WORKGROUP 可以从你的 "我的电脑->计算机名->域" 看到。 一般个人电脑都是 WORKGROUP ,如果是使用域控制的公司环境,可能有所变化。
我所说的精简版:是指 深度、雨木林风 之流的打包组的精简系统
这些号称 300M-700M 的绿色 Ghost 系统
都是精简了很多东西,有些却是我们很少用却是非常必要的
所以装系统
我一向只装 MSDN 原版,然后自己打补丁。
运行以下命令: regsvr32 C:\Program Files\Common Files\Microsoft Shared\Speech\sapi.dll
如果上述文件不存在,可能是你安装时用了某些精简版的操作系统,如果这样,重装吧。
很明显 你的 [font=Verdana] NCover.Console.exe 文件已经损坏,可能是病毒造成的影响。 [/font]