由于是从Java转做.NET项目,在考虑SCM和自动编译时,自然而然想到NAnt,不过0.85的RC版本出来很久,一直没有正式release,直到最近一次偶然的机会我才得知正式版已经出来,虽然不支持Visual Studio 2005的解决方案/项目文件,但至少支持.NET 2.0,正好项目整个框架和模块清单基本定型,遂决定下点功夫把我们的构建过程脚本化、自动化。
经过些磕磕绊绊,总算是跑起来了,但还是有不够完美的地方,发现2个bug,提交到NAnt在SF.net上的bug database:
[
1614467] NAnt自带的scvs.exe(<cvs-checkout>)从CVS拿文件时会忽略文件的原始编码,如UTF-8。
[
1616136] NAnt的<cvs-pass>和<cvs-checkout>两个task对passfile属性的处理不一致,<cvs-pass>创建密码文件在指定位置,<cvs-checkout>却不从那里拿。
不知大家有没有遇到类似的问题。如果有时间,我倒是很想把源码拿下来看个究竟。