当历史记录中存在名称无效的分支时,可以克隆 SVN 存储库吗?

发布于 2025-01-01 14:27:59 字数 167 浏览 0 评论 0原文

我有一个 SVN 存储库,我想使用 git-svn 进行克隆,但是在这个 SVN 存储库的黑暗过去中,有一些分支的名称中包含空格...

当我尝试克隆时,git-svn 失败并显示 invalid具有所述分支的修订版上的对象名称。

有没有办法解决这个问题,并且不涉及在失败的修订后启动克隆?

I have an SVN repository that I would like to clone using git-svn, but in the murky past of this SVN repo there were some branches made with spaces in the name...

When I try to clone, git-svn fails with invalid object name on the revision with said branches.

Is there a way to get around this problem, that doesn't involve starting the clone after the failing revision?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

那伤。 2025-01-08 14:27:59

有一种令人讨厌的冗长方法可以从源头上解决问题,即使用 SVN 管理工具。我认为您需要对存储库(的副本)进行本地访问:

  1. 将 SVN 存储库转储到文本文件。
  2. 手动编辑分支名称(编写脚本?)
  3. 使用新名称重建 SVN 存储库。

不过你可能想考虑修补 git-svn 。听起来不那么痛苦了。不要忘记将您的补丁发布回上游,以便我们其他人从中受益。 :)

PS 我故意没有发布任何命令行来执行此操作,因为我从未尝试过,并且不能保证它是正确的。您正在寻找的工具是svnadmin

There's a nasty long winded way to fix the problem at source, using the SVN admin tools. You'll need local access to (a copy of) the repository, I think:

  1. Dump the SVN repo to text files.
  2. Edit the branch names manually (write a script?)
  3. Rebuild the SVN repo with the new names.

You might like to consider patching git-svn though. That sounds less painful. Don't forget to post your patch back to upstream for the rest of us to benefit from. :)

P.s. I deliberately haven't posted any command lines to do that because I've never tried, and couldn't promise it'd be right. The tool you're looking for is svnadmin.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文