我通过 git-svn 镜像的 svn 存储库已更改 URL。
在 vanilla svn 中,您只需执行 svn switch --relocate old_url_base new_url_base
。
我如何使用 git-svn 执行此操作?
简单地更改配置文件中的 svn url 失败。
最佳答案
这很好地处理了我的情况:
https://git.wiki.kernel.org/index.php/GitSvnSwitch
我使用 file://
协议(protocol)克隆,并想切换到 http://
协议(protocol)。
很想在 .git/config
的 [svn-remote "svn"]
部分编辑 url
设置,但是就其本身而言,这是行不通的。一般来说,您需要遵循以下过程:
- 将 svn-remote
url
设置切换为新名称。 - 运行
git svn fetch
。这需要从 svn 获取至少一个新的修订版本! - 将 svn-remote
url
设置改回原始 URL。 - 运行
git svn rebase -l
进行本地 rebase (使用上次提取操作带来的更改)。 - 将 svn-remote
url
设置改回新的 URL。 - 现在,
git svn rebase
应该又可以工作了。
喜欢冒险的人不妨试试--rewrite-root
.
关于git-svn:什么相当于 `svn switch --relocate` ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/268736/