我正在使用巡航控制.net从SVN获取应用程序的代码。我想在更改集的基础上获取它,下面是场景。
如果一个团队正在构建构建1,而第二个团队正在构建构建2,并且他们正在定期在SVN上提交代码。
我想只获取构建1的代码,而不是构建2的代码。如何使用巡航控件.net获取它?一个例子将非常感激
答案 0 :(得分:2)
每次提交SVN都有一个唯一的修订号。例如,要将工作版本更新为特定版本,请使用:
svn update -r REV
其中REV
是构建1或构建2的修订号。有关svn update
的更多信息,请参阅SVNBook。
或者,如果团队已对其构建进行分支,请使用svn switch。例如:
svn switch URL
其中URL
是分支的URL。如果您不知道用于构建的修订版号,请使用svn log查看更改历史记录以及构建完成时哪个版本是HEAD。
如果更改集是源代码管理的功能,请告诉我吗?
“更改集”对于不同的源控制系统可能意味着不同的事情。我假设您在询问源控制系统(1)是否唯一地标识了一组进行更改的文件,以及(2)该更改是否是原子的。是的,SVN都做到了。每个提交(更改)都由修订号唯一标识。
我们如何使用巡航控制和nant实现它?
查看NantContrib svn,svn-checkout和svn-update Nant任务。例如,要将myproject的代码放入c:\ src,其中c:\ src不是工作集,请使用:
<svn-checkout
destination="c:\src"
svnroot="http://server/svn/repos/projects/myproject"
revision="HEAD"
username="user"
password="password"
/>
并将HEAD替换为所需的修订号。