我们正在使用ankhsvn来检查我们的.net代码,但是我的设置有两个问题需要解决。
1 \我认为拥有像svn这样的工具的一个关键原因是你可以回滚到你的代码库的早期版本。如果开发人员只是检查代码,那么如何从颠覆中获得1.1版本(比如当前的生产版本)?
2 \在VS中您有解决方案的概念,许多解决方案可能使用相同的项目。如何确保开发人员何时签出解决方案,他们会获得属于该解决方案的相应项目版本?
答案 0 :(得分:5)
我建议您阅读SVN Red Bean本书。
答案 1 :(得分:1)
在ankhsvn中创建“标记”(应用程序的新版本):
要自动将工作副本切换到新分支,请选择“创建后切换到分支”。
注意:如果您的工作副本有修改,那么当您切换时,这些更改将合并到分支的工作副本中。
这是一个非常糟糕的解决方案,对我来说太过手动了(它不会“知道”原始项目位置,我不希望这个过程变得那么繁重)我真正想要的是一键点击做这项工作,所以将继续调查。
答案 2 :(得分:1)
问题2:
如果项目代码存储在svn存储库中的不同目录而不是解决方案中,则可以使用svn:externals
属性将项目的相应版本与解决方案相关联。如果将解决方案的主干上的externals属性设置为指向标记,则将使用解决方案检出已标记的项目的版本。
我不知道AnkhSVN接口是否提供了添加externals属性的方法,因为我通常使用TortoiseSVN存储库浏览器来完成任务。
我将推荐阅读Red Bean book。