2013-01-25 114 views
3

我们的组织从未使用过中继,并且为每个版本创建了新的SVN分支。是否可以简单地选择最近的分支,并创建该分支的新Git仓库(有历史记录)?是否可以将SVN分支转换为新的GIT回购?

+0

'git svn init'有很多配置选项。你有更具体的问题吗? –

+0

我不知道为什么这是关闭的“脱离主题”。这是一个相当基本的问题,但它是关于使用Git和SVN,因此完全是主题。 – sleske

回答

1

是的,你可以简单地选择克隆从SVN回购唯一的一个分支:

git svn clone http://svn.example.com/project/mostRecentBranch 

这将创建一个分支混帐回购协议,表示“mostRecentBranch”的历史从SVN回购协议。

git svn将尝试还包括分支创建之前的历史(即,“mostRecentBranch”被复制/创建的分支的历史)。但是,如果分支未在SVN中正确创建(即未使用“svn copy”创建),则这可能不起作用。

+0

保卫我的问题并提供正确的答案。真棒! – chieffancypants

+0

有没有办法在特定的版本中启动它?我们有71000个提交的大型SVN回购协议,我的项目在r50000左右开始,所以我想跳过第一个50000提交。 –

+0

@JasonS:请参阅[如何git-svn克隆Subversion存储库中最后n个版本?](http://stackoverflow.com/questions/747075/how-to-git-svn-clone-the-last-n -revisions从 - 一个颠覆存储库)。 – sleske