为什么git svn获取速度如此之慢?

Dou*_*ain 9 svn git git-svn

我正在尝试git svn fetch我的repo执行一个git rebase -i 我在本地执行获取为什么它这么慢?是否真的需要这么多时间来创建1000个修订版?似乎这个过程只是在文件中"睡了一觉"然后突然出现了一连串的活动.

har*_*rmv 19

这似乎是'git svn'的windows端口的问题.或者更具体地说是windows/cygwin上'git svn'的perl库之一.

克隆12MB 75修订版svn repo

  linux: 45 seconds
  windows (cygwin): 25 minutes
Run Code Online (Sandbox Code Playgroud)

  • 2019 年,`git-scm`、`git version 2.22.0.windows.1`、`git svn fetch` 一样的缓慢。 (3认同)
  • 2年零8个月后:问题依然存在。情况可能已经好一点了。今天早上,在 Linux 上克隆同一个存储库花费了 44 秒,在各种 Windows 机器上(平均)花费了 12 分钟。 (2认同)
  • 2022 年,git 版本 2.35.1.windows.2 (2认同)

man*_*lds 6

git svn fetch(和clone)必须完成繁重的工作并创建整个存储库,与svn交谈并在本地机器上创建git存储库.您可以在svn服务器所在的同一服务器上执行此操作(这是我认为您在本地的意思),但仍然git svn客户端必须处理大量修订,逐个处理它们并创建repo .1000次修订很多,可能需要一段时间.要有耐心,让它发挥作用.当您处理仓库时,请确保经常获取/变换.

  • 不,没有什么繁重的工作...这只是“git svn”的 Windows 端口中的一个性能错误。 (4认同)
  • 2天,2台重新启动的服务器,1台硬盘空间不足,24小时后我终于完成了它. (3认同)

gtr*_*rak 6

经历了同样的事情后,我发现它在Linux上的速度比在Windows上使用cygwin要快得多.我试试看.

  • 刚尝试从windows和(运行VM的)linux运行相同的`git svn clone`命令(从本地svn repo克隆).Git版本:Win:1.8.3.msysgit.0,Linux:1.8.3.2.与Windows相比,Linux是*BLAZING*!我没想到. (3认同)
  • 谢谢。使用 VirtualBox 启动 linux VM,在那里执行 `git svn clone`,然后将其克隆到 cygwin(并引入 git-svn 配置)只为我节省了几个小时。 (2认同)
  • 使用 Process Explorer 查看幕后的进程,它会反复生成一个 `pearl.exe` 来完成这项工作。 (2认同)