Mor*_*fie 5 svn windows tortoisesvn
我有一个非常大的svn回购.当我尝试使用它(提交,更新等)时,它说有锁.
当我运行'svn cleanup'时,它表示工作副本太旧了,我需要升级它.
当我运行'svn upgrade'时,它运行,但没有说什么.
我还在repo上运行'svnadmin upgrade',以防万一.
我安装了最新的TortoiseSVN.
通常,如果我有SVN怪异,我会移出文件,更新,移回文件,但正如我之前提到的,这是一个非常大的回购.
任何帮助,将不胜感激.
谢谢!
具体信息:
>svn update
svn: E155004: Run 'svn cleanup' to remove locks (type 'svn help cleanup' for details)
svn: E155004: Working copy '*****' locked.
svn: E155004: '*****' is already locked.
>svn cleanup
svn: E155036: Please see the 'svn upgrade' command
svn: E155036: The working copy at '*****' is too old (format 29) to work with client version '1.8.1 (r1503906)' (expects format 31). You need to upgrade the working copy first.
>svn upgrade
>
更新1:我安装了1.7.X客户端并尝试运行清理.它抱怨由于某种原因,回购不是工作副本.我尝试使用相同的1.7.X客户端进行更新,并收到以下消息:
>"c:\Program Files\SlikSvn\bin\svn.exe" update
svn: E155021: This client is too old to work with the working copy at '*****' (format 31).
You need to get a newer Subversion client. For more details, see http://subversion.apache.org/faq.html#working-copy-format-change
所以,这个客户端的东西是repo格式31. tortoisesvn认为它是格式29.现在我更困惑了.
更新2:对@David W的回应
Is this about a working copy or the repository?
工作副本.虽然我也试过svnadmin升级回购.但是,我使用的svnadmin是1.8.1.我只是尝试用TortoiseSVN升级回购(1.8.10),但这并没有解决问题.
is this about a file that's locked because someone locked it, or because your working directory is locked due to an incomplete
我是唯一一个使用回购的人,所以我知道没有其他人锁定它.这可能是由于操作不完整.
我用1.8.10运行svn状态,没有任何'K'.有些文件带有'L',有一个带有'?'.列出的所有项目都是目录,而不是文件,但标有"?"的项目除外.
如果我运行'svn lock --force dirname',它会响应该特定节点"不是文件".当我在标有"?"的文件上运行它时,它响应该节点"未找到".
Then, there is a locked working directory because of an incomplete operation...
是的,你打电话给它.这就是为什么所有的东西都标有'L',我收集.
当我运行清理(1.8.10)时,它给了我在我的intiial问题中报告的相同错误(格式29对于此格式31客户端来说太旧了).
Remember that you can always delete a working directory and create a new one
是的.如果我删除工作副本中的任何目录并点击更新,它会抱怨它已被锁定.我无法清除锁定,原因是格式不匹配.理论上我可以重新检查整个仓库,然后复制回来,但回购是12GB(210,000个文件).
Be careful about mixing up Subversion clients
所以,我没有意识到我有两个客户端,但我只是只使用TortoiseSVN(1.8.10).我今天才发现,当我尝试进行故障排除时,我有两个.
*更新3:解决方案* 使用@David W的提示,以下是我如何解决问题:1)备份我的.svn文件夹2)从https://github.com/sqlitebrowser/sqlitebrowser/releases下载SQLite编辑器 3)打开我的wc.db文件并浏览WC_LOCK表.该表中有1个条目,我将其删除.4)尝试使用TortoiseSVN(1.8.10)进行清理,之前曾抱怨锁定.它终于奏效了!5)尝试在我的仓库中运行命令(更新,提交等),一切都很开心.
感谢所有帮助过的人,特别是@David W没有放弃我.
我有一个非常大的svn回购.当我尝试使用它(提交,更新等)时,它说有锁.
这是关于工作副本还是存储库?两件不同的事情.此外,这是关于一个文件被锁定,因为有人锁定它,或因为您的工作目录由于不完整而被锁定
您可以锁定文件,阻止您进行提交.从命令行,您可以执行a svn status并查看K锁定文件的旁边.然后,您可以svn lock --force用来窃取锁定,并检查您的更改.(只要存储库中没有钩子阻止您窃取锁定).
然后,由于操作不完整,存在锁定的工作目录.在这种情况下,你会看到L你何时做svn status.在这种情况下,您通常可以svn cleanup在该工作副本的根目录中执行a (.svn文件夹所在的位置.)
请记住,您始终可以删除工作目录并创建新目录.混淆Subversion客户端要小心.有一段时间,它似乎没那么重要,但在版本1.6,1.7,1.8和1.9中,工作副本的结构已经改变,可能与运行其他修订版的客户端不兼容.
是的.如果我删除工作副本中的任何目录并点击更新,它会抱怨它已被锁定.我无法清除锁定,原因是格式不匹配.理论上我可以重新检查整个仓库,然后复制回来,但回购是12GB(210,000个文件).
删除目录然后执行a svn up不会清除锁定问题.我打算删除整个工作目录,并重做一个svn co.您不必签出整个仓库.你只需要看看你需要什么.你需要所有210万个文件吗?我对此表示怀疑:
$ svn co http://server/repo            # NOOOO!
$ svn co http://server/repo/trunk      # A bit better, but do you need all
                                       # the projects under Trunk?
$ svn co http://server/repo/trunk/foo  # Now, I'm just checking out foo
$ svn co http://server/repo/trunk/bar  # Now, I'm just checking out bar
这将检查两个工作目录:一个用于foo,一个用于bar.
如果你真的,真的想要检查整个主干,请使用--depth稀疏检查你需要的东西:
# Checking out trunk, but only getting the project directories
$ svn co http://server/repo/trunk --depth=immediates
$ svn up --set-depth=infinity foo
$ svn up --set-depth=infinity bar
这里我理论上检查整个主干,但我只是获得空的主项目目录.我只从项目获取文件foo和bar.但是,foo并bar 共享一个工作目录.假设我开始了一个很长的更新foo,然后我去bar尝试提交.我会收到一个警告,说明工作目录已被锁定.即使它们位于该工作目录的不同部分,我也不能在同一工作目录上执行两个单独的Subversion命令.
所以,我没有意识到我有两个客户端,但我只是只使用TortoiseSVN(1.8.10).我今天才发现,当我尝试进行故障排除时,我有两个.
如果安装Tortoise,您还可以安装Subversion命令行客户端,这是一个可选的安装.我强烈推荐它!不要使用从其他地方下载的命令行客户端(如SlikSVN或CollabeNet.这并不是说这些客户端是坏的.这是你应该使用你的TortoiseSVN版本附带的命令行客户端,以保证两者之间的某些奇偶校验Subversion客户端.
让这些困惑很容易.您不应该svnadmin在工作目录中使用命令.的svnadmin是服务器.你有的问题是严格的客户.
随着Subversion从1.6升级到1.7到1.8,现在upgrade升级到1.9,将工作目录升级为新格式.完成后,您无法恢复旧格式.您升级到1.8格式,1.7和1.6客户端将不再工作.
清理是为了帮助删除由于Subversion客户端命令不完整而导致的锁定.
| 归档时间: | 
 | 
| 查看次数: | 29065 次 | 
| 最近记录: |