从SVN转移到......?

xkc*_*150 4 svn git version-control mercurial dvcs

我目前正在一个团队工作,我们正在"使用"一个subversion存储库.我说"使用",因为实际上,每个人都只是通过samba共享直接在服务器上编辑文件,而我们的架构师每隔一段时间就通过我们的更改从该服务器进行提交,然后将其推送到服务器.

所以基本上我们错过了能够从不同用户那里获得有意义的提交消息,并且能够按照我们喜欢的方式提交.

我一直试图引起人们对分布式系统的兴趣,以及我们所拥有的工作流程如何能够与git(我们在本地机器上提交然后将更改集推送给他进行审核)非常好地设置,但是我不觉得我有足够的git经验.我的大部分DVCS经历都是善变的.

每个人都在使用tortoisesvn在Windows环境中工作,这就是他们习惯与系统交互的方式,但他们偶尔会使用PuTTY在其中一个Linux服务器上工作,并且知道如何进行命令行提交.

有什么方法可以解决这个问题,我已经看到了在SVN和某些DVCS之间建立网关的一些工作,有没有人有在这样的环境中设置和工作的经验?

如何从SVN到DVCS进行全面迁移?

Jon*_*der 20

如果你的团队无法理解如何很好地使用subversion,我不知道你将如何让他们理解git.特别是因为他们处于"让所有工作在同一个工作副本中"的思维模式,他们将很难掌握分布式版本控制系统.

根据我的经验,使用svn-git,你必须知道如何使用git,你必须知道如何使用svn.我建议教他们正确使用svn.


Ree*_*sey 11

您是否有理由不想保留SVN存储库,并以SVN的使用方式使用它?

为什么不让每个人签入和合并,使用分支机构等?如果您有存储库设置,为什么要切换?

  • @ xkcd150:建议他们使用分支进行部署.这就是首先拥有存储库的美妙之处 - 分支和标记非常适合部署情况,代码保存在一个连贯的位置.任何源代码控制都会发生同样的问题 - 更多的是让他们接受源代码控制并利用它,而不仅仅是滥用它.SVN外部也可用于将回购拆分为单独的无关部分,这可能是为建筑师提供"安全"的方式 (4认同)

sho*_*osh 6

您所描述的问题似乎主要与提交代码的正确程序和协议有关.获得不同的产品不会改变人们的工作方式.你需要先教育他们.向他们展示如何更好地做事.

另一方面,我没有得到你如何使用tortoiceCVS与SVN接口.

  • 如果每个人都已经在使用tortoiseSVN,那么正确的工具就是SVN. (2认同)