首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用git和git-svn的分散开发

使用git和git-svn的分散开发
EN

Stack Overflow用户
提问于 2011-01-10 09:35:30
回答 3查看 1K关注 0票数 6

我们有2-3个小分队,有2-3人。我们都将git用于本地,svn用于中心存储库,git-svn获得同步。这一直都是有效的,除非我们希望在团队之间共享代码。

因此,我们已经尝试了git拉,这造成了很多冲突,它没有检测到我们在同一棵树上。它获取所有的变化(克隆,然后拉),当然,我不想克隆完全回购。每次我都想分享。

请建议一个更好的流量。

  1. 我们无法摆脱中央的svn。
  2. 我们不能每次都克隆。
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-01-10 09:42:07

指定一名团队成员为“git集线器”,他/她与SVN服务器同步,其他团队成员与他们交互,而不是直接与SVN服务器进行交互。这样,git就会知道所有的团队成员都在同一棵树上。

票数 3
EN

Stack Overflow用户

发布于 2011-12-09 04:05:03

对于您来说,SubGit似乎是一个很好的替代方案。

SubGit是服务器端的解决方案,它允许Git访问Subversion存储库,反之亦然.这意味着您可以只使用Git存储库,使用您选择的Git客户端。

您需要将SubGit安装到Subversion存储库一次。在此之后,SubGit立即将每个svn commit上的svn修订转换为git提交,在每个git push上将git提交转换为svn修订。

SubGit是封闭源码软件,但它对开源项目是免费的。有关更多信息,请参考SubGit文档化

票数 3
EN

Stack Overflow用户

发布于 2011-01-10 11:49:34

为了增加Chris Leaver的答案,您需要一个中心点来使用svn回购来重新提交/重基。

这并不否认Git的“分散”方面,它只允许每个人使用作为远程存储库之一的“中心”引用回购(即与svn同步)。

没有一种简单的方法可以避免复制来自(可能是巨大的) svn回购的所有内容的负担,因为由此产生的不能将Git repo拆分为子模块。

这至少留下一个“解决办法”,这将涉及:

  • 在主Git旁边创建不同的Git(与SVN同步)
  • 从主要回购程序导出修补程序
  • 将这些补丁应用于每个Git,表示主Git中的一个项目。

它显然需要自动化,但是有一个团队将专注于其中一个git repos作为其“中心”回购,负责SVN同步的人员将使用来自主(和隐藏) Git<=>SVN回购的补丁更新那些较小的Git repos。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4645337

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档