如何将具有历史记录的SVN存储库迁移到新的Git存储库?

如何将具有历史记录的SVN存储库迁移到新的Git存储库?

我阅读了Git手册,FAQ,Git-SVN速成班等,他们都解释了这和那个,但是你找不到像这样简单的说明:

SVN存储库位于:svn://myserver/path/to/svn/repos

GIT储存库:git://myserver/path/to/git/repos

git-do-the-magic-svn-import-with-history \
svn://myserver/path/to/svn/repos \
git://myserver/path/to/git/repos

我不认为它会那么简单,我也不希望它是一个单一的命令。但我确实希望它不会试图解释任何事情-只是想说明在这个例子中应该采取什么步骤。


宝慕林4294392
浏览 544回答 3
3回答

慕盖茨4494581

魔法:$ git svn clone http://svn/repo/here/trunkGIT和SVN的操作非常不同。您需要学习Git,如果您想跟踪SVN上游的变化,则需要学习git-svn..这个git-svn手册页有一个很好的示例部分:$ git svn --help

慕尼黑的夜晚无繁华

干净地将Subversion Repository迁移到Git存储库..首先,您必须创建一个文件,该文件将您的Subversion提交作者名称映射到Git提交者,例如~/authors.txt:jmaddox&nbsp;=&nbsp;Jon&nbsp;Maddox&nbsp;<jon@gmail.com> bigpappa&nbsp;=&nbsp;Brian&nbsp;Biggs&nbsp;<bigpappa@gmail.com>然后,您可以将Subversion数据下载到Git存储库中:mkdir&nbsp;repo&nbsp;&&&nbsp;cd&nbsp;repo git&nbsp;svn&nbsp;init&nbsp;http://subversion/repo&nbsp;--no-metadata git&nbsp;config&nbsp;svn.authorsfile&nbsp;~/authors.txt git&nbsp;svn&nbsp;fetch如果你在Mac上,你可以git-svn通过安装MacPortsgit-core +svn.如果您的Subversion存储库与所需的git存储库位于同一台计算机上,那么您可以在init步骤中使用此语法,否则将使用相同的语法:git&nbsp;svn&nbsp;init&nbsp;file:///home/user/repoName&nbsp;--no-metadata
打开App,查看更多内容
随时随地看视频慕课网APP