我们有一个RoR项目,我们托管自托管的svn并使用Redmine进行问题跟踪。我是唯一的技术核心团队成员,之前没有使用过git。我们上周聘请了一位开发人员,他们也没有使用过git。我们将一些工作外包给一个主要使用git工作的供应商,但有时会在svn上搞砸分支,变基和提交。
我正在考虑切换到github,主要是因为它会消除管理svn和redmine的麻烦,并且听到了很多关于git和github的事情。
我觉得这是明智的吗?如果您的答案是肯定的,我如何将我的svn存储库迁移到github?我们有如下目录结构:project
- trunk
- branches
有些分支机构正在进行不完整的工作,我无法想象我们的工作方式不会有活跃的分支。
添加:请告诉我,如果我进行切换,工作流程和存储库管理将如何变化?
答案 0 :(得分:4)
我最近将我在印度的团队搬到了SVN的github。我用了svn2git。在设置svnusers文件之后,所有提交历史记录都被保留并很好地映射到开发人员github帐户。
使用svn2git的另一个好处是,在过渡期间,我们实际上在svn和git repos上都有活跃的开发。我能够使用
svn2git --rebase
从subversion repo中提取提交并将它们应用于git。然后我可以把那些推到github。这只能单向工作,但这对我们来说没什么问题,因为我们没有兴趣将git中的变化拉回到svn中,只是为了确保合并来自颠覆落伍者的工作。