gpt4 book ai didi

git - 为什么 git svn show-ignore/show-externals 这么慢?

转载 作者:太空狗 更新时间:2023-10-29 14:01:32 26 4
gpt4 key购买 nike

我正在编写一个通用的 svn -> git 迁移脚本,它比标准的 git svn clone 允许更多,并且在脚本的一个阶段,我正在检查迁移存储库中每个分支的 git svn show-externalsgit svn show-ignore 的输出,并采取各种步骤取决于这些命令的输出。

我现在的问题是,虽然我的脚本的其余部分执行得非常快,但这两个命令似乎特别占用了我绝大部分的运行时间。在某些情况下,git svn show-externals 需要超过 10 分钟才能运行(在包含大约 5000 个文件的存储库上)。当在具有 10 个或更多分支的这种大小的存储库上运行时,您可以想象这会增加很多。

为什么这个操作需要这么长时间才能执行?我可以做些什么来加快它的执行速度吗?

最佳答案

“git svn show-ignore”对每个目录执行一个额外的 SVN 请求。

出于迁移目的,您可能想看看 SubGit工具。它为每个修订版翻译 svn:ignore -> .gitignore(它还翻译 svn:eol-style、tags 等等)。唯一的限制:它需要本地访问 SVN 到存储库。所以它可能与 svnrdump 结合使用工具。如果您在本地有 SVN 存储库,迁移将一步完成:

$ subgit install path/to/svn/repo

关于git - 为什么 git svn show-ignore/show-externals 这么慢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10687382/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com