繁体   English   中英

如何在存储库之间移动提交?

[英]How to move commits between repositories?

我有一堆提交应用于SVN仓库的提交,现在我需要将它们移到git仓库。 我正在考虑使用补丁程序一次应用提交,但是这些补丁程序使用的相对路径在两个存储库中都不同,例如,在svn和/ project / src / main /中的/ trunk / project / src / main / java / ... git中的java / ...有一种方法可以创建具有到src / main而不是trunk / project / src的相对路径的补丁。

我想将此添加为评论,但我没有50的声誉点,哦。 我相信您的问题的答案可以在这里找到:

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

您应该使用svn clone

git svn clone <SVN_REPOSITORY_URL>

git svn对我不起作用,它因一些令人讨厌的错误而失败:/ usr / lib / perl / ....因此,我使用IntelliJ IDEA通过以下方式解决了此问题:

  1. 一张一张地贴
  2. 在应用补丁程序窗口中,我更改了初始提交中每个文件的文件夹层次结构
  3. 将文件夹更改为git文件夹。

但是这种方法很耗时

您尝试过svn2git吗? 这确实是一个基于git-svn的强大工具。 我已经使用它将很多svn仓库移到了git仓库。 您可以尝试查看perl错误是否仍然存在。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM