Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Svn 我们使用Subversion,但我们的客户端使用SourceSafe。我有什么选择?_Svn_Version Control_Visual Sourcesafe - Fatal编程技术网

Svn 我们使用Subversion,但我们的客户端使用SourceSafe。我有什么选择?

Svn 我们使用Subversion,但我们的客户端使用SourceSafe。我有什么选择?,svn,version-control,visual-sourcesafe,Svn,Version Control,Visual Sourcesafe,我们即将启动一个新项目,并且我们客户机的当前应用程序是在SourceSafe中进行.NET版本控制的。但是,我们在内部使用Subversion。这可能是“一次性”交付(完整的应用程序重写),因此他们可以轻松地从我们的repo进行签出,然后导出,并导入到他们的SourceSafe repo中。然而,我担心的是,如果我们有一些编辑或做未来的维护,这将变得更加难以管理。有没有关于如何最好地处理这个问题的想法 编辑: 我不确定这是否有影响,但客户进行更改的可能性很低。如果他们这样做了,那将是在我们100

我们即将启动一个新项目,并且我们客户机的当前应用程序是在SourceSafe中进行.NET版本控制的。但是,我们在内部使用Subversion。这可能是“一次性”交付(完整的应用程序重写),因此他们可以轻松地从我们的repo进行签出,然后导出,并导入到他们的SourceSafe repo中。然而,我担心的是,如果我们有一些编辑或做未来的维护,这将变得更加难以管理。有没有关于如何最好地处理这个问题的想法

编辑:


我不确定这是否有影响,但客户进行更改的可能性很低。如果他们这样做了,那将是在我们100%完成之后,这使得管理更容易。如果我们两人同时进行更改,那么我可能会建议我给他们对他们项目的回购协议的写访问权,我们就这样管理它。不过,我尝试着向前看,因为他们很有可能希望我们回来与他们一起做更多的工作。

我想知道是否有任何方法可以使用分布式版本控制系统来管理两个存储库之间的交互。我知道git可以与svn一起工作,但我不确定sourcesafe。客户端是否也会对程序进行更改?如果是这样的话,我会说您认为最好的方法是:从subversion导出并将其放入源代码安全。然后,无论何时他们希望您进行更改,您都会导出(或签出或其他任何内容)他们所做的任何更改,并在subversion中对签出的版本进行这些更改(实际上只是在顶部进行复制)。这并不漂亮,但你没有很多选择。你也可以试着让他们给你发送他们所做的任何更改


为什么需要将代码保存在两个代码repo中?

另一个选项是为他们提供访问您的svn repo(仅针对他们的项目)的权限,并为他们提供支持、链接等。一旦他们看到了希望,他们可能不想使用其他任何东西

我想我会这样做,直到你对ssafe做出决定。也许在你做出决定之前,它就会消失

我过去确实有过这样的经历。出于某种原因,我们分包的公司在内部使用CVS,但面向外部客户的东西使用SourceSafe。我接管了这个项目并把它投入svn。承包商对此表示满意

编辑:

此外,还可以设置主/从svn repo。不确定这在这种情况下是否有帮助

另一种可能性是询问他们,如果您首先设置并管理svn回购,他们是否会主持svn回购


总而言之,最好是和客户谈谈,解决这个问题。看看你能想出什么主意。维持两次积极回购不是一个好主意

我一直在开发一个VSS->SVN迁移工具,其中一项任务是为SVN存储库提供更新支持,在某个日期之后进行任何更改(我必须这样做,因为我们有一个16 gig的VSS DB,迁移大约300万个单独的修订需要很长时间)

因此,我创建了VSS DB的快照副本,并使用它进行导入,然后在一段时间后,我迁移了自拍摄快照以来所做的所有更改。这似乎对您很有用,因为您可以只导入客户端对其VSS DB所做的更改

代码在SVN repo中发布,但尚未作为包构建,因为您必须从SVN repo下载文件并构建。它是基于.NET的,所以你应该对它感到舒服。它还保留所有标签、作者和日期更改


它的主机位于。

这似乎是一个很好的方法;sourcesafe端可能需要手动(或从自定义脚本读/写)才能看到光明?Git没有被提及,是吗?;)有趣的我认为git在UI和易用性方面还有很长的路要走,源代码安全人群才会采用它。您要求两家公司更改存储库,而不仅仅是一家。这是一个很大的飞跃。无论如何,我可能会选择mercurial而不是git。