svn relocate 错误 -- 无效的重定位目标
svn relocate error -- invalid relocation destination
我们的 svn 存储库的位置更改为不同的 url,此外主干、分支和标签的相对路径也移动了一点。现在,当我尝试 svn relocate
时,我收到此消息。
Invalid relocation destination: 'https://my-repo-server/new-proj-name/branches/my-branch' (does not point to target)
我尝试重新定位到 repo 的 url,然后再次尝试使用我想切换到的分支的 url。我没有尝试使用 switch --relocate
,因为在我的 svn 版本中已弃用。
我相信如果不更改文件夹结构,这会奏效。
用权宜之计解决了这个问题——从工作副本的根目录中,删除了 .svn 文件夹和 运行 svn checkout <new-url-of-branch> .
如果有人有更好的答案,不涉及删除 .svn 文件夹,我会select它。
(这本来是对@AlexMA 自己的回答的评论,但有些人自己结束了。)
也许可以使用 sqlite3 CLI 编辑 .svn 目录中的 wc.db。但首先必须找出数据库的结构,才能直接通过 SQL 编辑相关表 - 简单地转储 wc.db,编辑转储文件,像存储库一样加载回来,得到一个工作副本 no不再被认可。但这可能会引发更多问题。毕竟工作副本被 SVN 开发人员视为可有可无,所以最好将 WC 更新到旧版本库的最新版本,从新版本库中检出相同版本的新 WC,然后将所有未提交的修改从旧版本复制到新版本WC 并重新创建任何更改列表。
根据TortoiseSVN,在以下情况下不应使用重定位命令:
You want to switch to a different branch or directory within the same repository. To do that you should use TortoiseSVN → Switch.... Read the section called “To Checkout or to Switch...” for more information.
因此,您应该执行 svn switch https://my-repo-server/new-proj-name/branches/my-branch
,因为您正在同一个存储库中移动。
我们的 svn 存储库的位置更改为不同的 url,此外主干、分支和标签的相对路径也移动了一点。现在,当我尝试 svn relocate
时,我收到此消息。
Invalid relocation destination: 'https://my-repo-server/new-proj-name/branches/my-branch' (does not point to target)
我尝试重新定位到 repo 的 url,然后再次尝试使用我想切换到的分支的 url。我没有尝试使用 switch --relocate
,因为在我的 svn 版本中已弃用。
我相信如果不更改文件夹结构,这会奏效。
用权宜之计解决了这个问题——从工作副本的根目录中,删除了 .svn 文件夹和 运行 svn checkout <new-url-of-branch> .
如果有人有更好的答案,不涉及删除 .svn 文件夹,我会select它。
(这本来是对@AlexMA 自己的回答的评论,但有些人自己结束了。)
也许可以使用 sqlite3 CLI 编辑 .svn 目录中的 wc.db。但首先必须找出数据库的结构,才能直接通过 SQL 编辑相关表 - 简单地转储 wc.db,编辑转储文件,像存储库一样加载回来,得到一个工作副本 no不再被认可。但这可能会引发更多问题。毕竟工作副本被 SVN 开发人员视为可有可无,所以最好将 WC 更新到旧版本库的最新版本,从新版本库中检出相同版本的新 WC,然后将所有未提交的修改从旧版本复制到新版本WC 并重新创建任何更改列表。
根据TortoiseSVN,在以下情况下不应使用重定位命令:
You want to switch to a different branch or directory within the same repository. To do that you should use TortoiseSVN → Switch.... Read the section called “To Checkout or to Switch...” for more information.
因此,您应该执行 svn switch https://my-repo-server/new-proj-name/branches/my-branch
,因为您正在同一个存储库中移动。