dvcs -不同的分布式版本控制系统协同工作

Translate

我的办公室有一个中央Source Safe 2005安装,用于源代码控制。我无法更改办公室在服务器上使用的内容。

我使用笔记本电脑进行开发,并且希望拥有一个可以与中央服务器(如果有)同步的其他本地源代码控制存储库,而无论该中央提供者是什么。发出请求的原因是,我可以为客户演示文稿维护一个本地稳定的分支/版本,同时继续进行开发,而不必跳过火圈。另外,作为顾问,我的客户可能会要求我使用他们的源代码控制提供程序,而这里的灵活性将使生活更加轻松。

现有的任何分布式源代码控制客户端都可以处理吗?

This question and all comments follow the "Attribution Required."

所有的回答

Translate

好吧... KernelTrap有在这个东西上。看起来你可以使用vss2svn将Source Safe存储库通过管道传递到Subversion存储库中,然后使用非常好的git-svn拉入本地git存储库。

我认为使用此方法将提交回VSS的过程不是一个平稳,自动的过程。

来源
Translate

您应该能够签出代码的当前版本,然后围绕它创建一个git存储库。更新它并将其提交到本地git存储库应该很容易。就像克隆它一样。

唯一的问题是,您需要通过弄乱适当的忽略文件来使它们都互相忽略(我做过与SVN类似的事情)。我想让SourceSafe让您忽略一切。而且,您需要两次执行某些操作(例如,告诉两个用户都在删除文件)。

来源
Translate

这个HanselMinutes的一集恰好涵盖了我希望听到的内容。显然,可以在本地使用Git,然后根据需要将其附加到外部subversion / vss存储库。他们在14到15分钟内谈论它。

来源
Translate

有一天,我在一家使用VSS的公司(和其他使用其他不太了解的公司的公司)工作单片机),但我更喜欢使用SVN(总有一天我会尝试GIT)进行积极的开发,这对我和我的团队来说都是如此。

首先,这种情况是一个好主意,如果对VSS的提交很少超过一个月,因为与其他SCM(而不是VSS)一起工作会给您带来更大的灵活性,但是从SVN到VSS的时间花费很昂贵。

我的解决方案是:

VSS-> SVN:我有Linux脚本(或ant脚本或XXX脚本),该脚本从VSS的当前更新目录工作复制到当前SVN,然后刷新SVN客户端并更新/合并/提交到SVN。这样,您就可以从使用VSS的公司其他部门的变更中得到更新。

SVN-> VSS:这样,您需要将所有修改文件检出到VSS,然后只需使用反向脚本从当前更新SVN目录(忽略.svn目录)复制并复制到当前更新VSS目录,更新并提交。

但是请记住,在某些情况下值得您花时间进行此操作。

来源
下一个问题:
c# -隐藏继承的成员