【问题标题】:Trying to get svn2git working on Windows试图让 svn2git 在 Windows 上工作
【发布时间】:2012-05-23 09:57:25
【问题描述】:

我正在将一个 SVN 存储库迁移到 Git。 git-svn 命令不能正确处理分支和标签,但我偶然发现了一个名为 svn2git 的工具,它似乎可以解决这个问题(https://github.com/nirvdrum/svn2git)。

我已尝试设置此工具以在 Windows 上运行,但没有取得太大成功。

我首先将 svn2git 安装复制到 C:\svn2git 并下载 Ruby for Windows (http://rubyinstaller.org/) 并将其保存在 C:\Ruby193。

运行 svn2git 回来了

/bin/env: ruby: No such file or directory

然后我将 Ruby 的 bin 和 lib 文件夹分别复制到 svn2git 的 bin 和 lib 文件夹中。

运行 svn2git 然后返回

<internal:gem_prelude>:1:in `require': cannot load such file -- rubygems.rb (LoadError) from <internal:gem_prelude>:1:in `<compiled>'

有谁知道如何让它在 Windows 环境下工作?谢谢

【问题讨论】:

  • git-svn 和你的分支有什么问题?你有非标准的主干/分支/标签布局吗?
  • @DmitryPavlenko:问题是标签不是作为真正的 git 标签创建的,而是作为分支创建的。 svn2git 将 svn 标签转换为 git 标签。这与特殊的 repo 布局无关。

标签: ruby git svn git-svn


【解决方案1】:

很明显,rubygems.rb 不见了。按照此处的说明安装它:
https://rubygems.org/pages/download

然后,按照此处的说明安装svn2git
https://github.com/nirvdrum/svn2git

之后,一切都会好起来的。

【讨论】:

  • rubygems.rb 安装链接已损坏。
  • @JoeSkeen:感谢您的通知;更新链接。
【解决方案2】:

我建议你试试SubGit 工具。它确实将 Subversion 标签翻译为标签,并且在 Windows 上运行良好(需要 Java 5 或更高版本)。 SubGit 可以使用了。您可以在download page 获得最新版本并阅读web site 上的文档。

最初在 2012 年早期的 SubGit 版本需要本地访问 Subversion 存储库(通过文件系统),但后来(到 2015 年)添加了对 subversion 的网络访问。

免责声明:我是 SubGit 开发人员。

【讨论】:

  • 感谢您的提及!您应该编辑它,因为它现在可以通过网络访问 repo。我只是使用 subgit + 比使用 git svn clone 更快乐(快得多),虽然我没有尝试过 svn2git,但我怀疑它是 git-svn 工具的 ruby​​ 驱动使用,因此对于大型 repos 可能很慢。
  • 老兄走了,如果事实已经过时,只需像我在这里所做的那样编辑。
【解决方案3】:

如果您只想从 SVN 迁移主干及其提交历史,您可以使用以下 git 命令轻松完成:

git svn init --prefix=svn/ --no-metadata --trunk=http://[svnHostName]/svn/[projectTrunkUrl] --no-minimize-url
git svn fetch --log-window-size=4000

太棒了!您已经使用所有 SVN 主干存储库历史初始化了本地 git 存储库!

现在您可能想要添加一个默认遥控器并推送:

https://help.github.com/en/articles/adding-a-remote

https://help.github.com/en/articles/pushing-to-a-remote

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-31
    • 2021-04-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多