在使用TortoiseSVN合并项目的两个分支后,我遇到了提交更改的问题。
以下是详细信息:
我做了一个合并分支到我正在研究的项目的主干。
项目包括与主存储库连接的主存储库和库,因为 svn external (库也是分支的)作为项目的子目录。
当我试图提交更改时,TortoiseSVN说:
Commit A
re all the targets part of the same working copy?
Unable to lock 'D:\websites\project\lib'
Please execute the "Cleanup" command.
当然清理没有帮助。
项目目录的svn:external 关键字定义良好, lib 文件夹中仍包含正确版本的库(主干版本)。< / p>
SVN服务器和客户端都是1.5.x版本(TortoiseSVN是1.5.3.x)。
从技术角度来看,项目和库都是同一SVN存储库中的项目。
知道出了什么问题吗?
我一直在谷歌搜索解决方案,但没有找到任何有用的东西,所以我尝试分两步提交我的更改:
哪个没有任何问题。
但我仍然想知道为什么我不能在一次提交中提交所有内容。
编辑:
答案 0 :(得分:2)
1.3 TortoiseSVN 很旧,最新版本为1.5.x.自1.3以来,Subversion和TortoiseSVN都发生了很多变化,所以升级你的客户可能是你最好的选择。
话虽如此,1.5 TortoiseSVN将创建/更新工作副本为1.5版格式。使用TortoiseSVN(或任何SVN客户端)对以前的Subversion工作副本时要非常小心。
答案 1 :(得分:1)
我想我记得在TortoiseSVN中读到了与此相关的错误,该错误已在最新版本中修复。查看最新的release notes。
答案 2 :(得分:1)
svn:external 会导致Subversion在签出时合并不同的存储库路径,但最终这些路径仍然是“不相交”的,所以你必须做两次提交以应用更改。
以下是Version Control with Subversion
的相关引用Subversion仍然真正运作 仅适用于非不相交的工作副本。 所以,例如,如果你想提交 您在一个或多个中所做的更改 更多的外部工作副本, 你必须明确地运行svn commit 那些工作副本 - 承诺 主要工作副本不会递归 进入任何外部的。