我们正在使用VisualSVN从SourceGear Vault切换到TortoiseSVN以进行Visual Studio集成 - 非常喜欢它。但是,我们在多个不同的应用程序中引用了多个类库,这些应用程序不是任何应用程序中工作副本根目录的一部分。处理此问题的最佳方法是什么,以便我们可以继续使用Visual Studio集成,但仍然保留位于每个项目/应用程序根目录之外的各种类库? SourceGear对此没有任何问题。

可以在资源管理器中使用TortoiseSVN单独添加类库,但是无法在Visual Studio中将更改提交到工作副本之外的任何内容;也没有VisualSVN“交通信号灯”。指示这些工作副本类库之外的状态。

顺便说一句,我们还要使用“一个包含许多项目的存储库”。路径而不是多个存储库,特别是因为这是我们多年来一直工作的方式。

更新:

我重新阅读了之前看过的一些内容,发现svn:externals不仅仅是指在不同的存储库中使用代码,还可以用于在VisualSVN中使用多个工作副本。

请参阅 http://www.visualsvn.com/support/topic/00007/ http://svnbook.red-bean.com/烯/ 1.2 / svn.advanced.externals.html

但是,这是解决此问题的最佳方法吗?有一个好的主题可以解决问题,但不能完全解决的东西。

因此,使用svn:externals与否?是否使用多个存储库?同样,多年来我们在多个解决方案/应用程序中引用了共享类库中的代码,这对我们有用。现在如何最好地使用VisualSVN?

有帮助吗?

解决方案

找到最佳答案此处

参考项目

有时构建一个由多个不同签出组成的工作副本很有用。例如,您可能希望不同的子目录来自存储库中的不同位置,或者可能来自不同的存储库。如果希望每个用户具有相同的布局,则可以定义svn:externals属性。

此处

包括一个共同的子项目

有时您会希望在工作副本中包含另一个项目,也许是某些库代码。您不希望在存储库中复制此代码,因为这样您将失去与原始(和维护)代码的连接。或者您可能有几个共享核心代码的项目。至少有3种方法可以解决这个问题。

其他提示

我知道你提出这个问题已有十多年了,但我很高兴地告诉你,在VisualSVN插件中实现多个工作副本的支持方面取得了进展。 VisualSVN 7.1.0-alpha1现在可用于测试,它在单个解决方案中为多个工作副本提供实验性支持

请参阅预发布下载页面。请注意,新版本仅支持Visual Studio 2019。

PS请参阅文章 KB7:在VisualSVN中使用多个工作副本。我们也将很快更新它。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top