无法打开.svn / text-base / file.svn-base?
我正在使用TortoiseSVN。 我只是对我的工作副本进行了一些更改,现在我去做了一些提交的文件,但在一个名为Search.aspx.cs的文件中
Commit failed (details follow): Can't open file 'C:\-----\trunk\.svn\text-base\Search.aspx.cs.svn-base': The system cannot find the file specified.
我已经尝试做SVN更新和SVN清理,没有什么是恢复此文件。 我甚至不能创build一个差异,因为它给出了有关缺less文件类似的错误。 我该如何解决? 我做了什么来造成它?
这似乎是你的情况可能的答案吗?
(来自http://www.uwplatt.edu/csse/tools/subversion/subversion-help.html )
“无法添加文件”(name here):同名的对象已经存在。
要么
“无法打开文件”folder.svn \ tmp \ text-base \ file.svn-base“:系统找不到指定的文件。
两者都意味着同一文件夹中的两个文件具有相同的名称,除了大小写; 例如“Readme.txt”和“README.TXT”。 Unix和Subversion区分大小写,所以文件被认为是完全不相关的。 但是在Windows中不区分大小写,所以当它尝试更新Readme.txt(比如说)的README.TXT时,就会中断。
解决这个问题的最可靠的方法是login到Unix系统(例如io.uwplatt.edu),并使用unix notes来检查存储库。 然后可以使用svn mv命令来重命名其中一个文件。 如果正在尝试向存储库中添加文件,则可以尝试使用TortoiseSVN-> Rename …将现有文件重命名为完全不同的文件,然后进行更新。 请注意,您需要使用TortoiseSVN重命名命令; 只是在Windows资源pipe理器中重命名文件不会解决您的问题。
我有这个相同的错误,并使用龟SVN的回购浏览器能够确认在存储库中有两个文件相同的名称,只有大写/小写字母。 您也可以通过删除其中一个文件来修复此问题(您可以通过repo浏览器首先进行比较,以确保您有所需)。
您可以复制工作文件:C:—– \ trunk \ Search.aspx.cs
到缺less的一个:C:—– \ trunk.svn \ text-base \ Search.aspx.cs.svn-base
它会做的伎俩。
嗨,我今天遇到类似的问题。
找不到文件.svn \ pristine \ 24 \ 24fd530d4bd82341fb514ab912c9e10adbc4ad89.svn-base我使用简单的方法来解决这个问题。
首先我删除这个项目的副本文件夹然后我查找这个文件不存在该文件夹下,所以我只是从其他文件复制一个SVN基地,并重命名为24fd530d4bd82341fb514ab912c9e10adbc4ad89.svn-base.And然后做清理操作。 之后,我遇到另一个文件missing.using相同的方式,最后我解决这个问题。 希望它可以帮助你
换句话说,解决scheme是用缺less的文件名创build一个新的svn-base文件
对于那些在不同的大小写/大小写中与同一文件名无关的问题,
我不知道是什么原因造成的,但是这个修复对我有用:
- 将有问题的部分检出到新的临时位置
- 备份(如果失败)并删除主要位置中的.svn文件夹
- 将主要位置中的.svn文件夹replace为临时位置中的.svn文件夹
- 承诺
这对我有效。 我只更改了一个文件。 不知何故.svn文件夹已损坏。 在做这件事之前请备份你的工作。
对我来说,问题是: 大小写敏感
在Linux下的svn仓库提交:2个与大小写同名的文件在Windows下更新svn仓库:更新或检出时出错=>系统找不到指定的文件。
我有类似的问题“( 无法打开文件folder.svn \ tmp \ text-base \ file.svn-base':系统找不到指定的文件” )。
这不是因为区分大小写的问题。 但是因为文件path太长了。 所以我用一个较短的名称重新命名了该文件夹,并将其移到C Drive里面并成功login。
所以如果不区分大小写,请注意文件的完整path的长度。
我意外地清空.svn / tmp文件夹(和我的HD上的所有其他空文件夹)后,我有这个问题。 上述解决scheme,除了恢复一个空的.svn / tmp文件夹帮助(所有.svn文件夹)没有。
它看起来像你的工作副本已损坏 – Search.aspx.cs的SVN基本文件丢失。
我在这样的情况下做了另一个目录中的单独检查,以便在基础上创build新的工作副本,导出修改后的工作副本,并将导出复制到新的工作副本上。
其余的改变是否正常?
如果他们把副本放在一边,杀掉这个目录,检出一个新的副本,然后把这个文件加回去
我只是在这里检查,因为我的TSVN刚刚触发了同样的错误。
在我的情况下,简单的“清理”相应的目录帮助。
解决scheme(在SVN目录损坏的情况下;清理等不会工作)
- 备份(重命名目录)
- 再次结帐
- 重命名新的目录
- 将旧目录重命名为旧名称
- 尝试再次提交(如果有必要,以小部分)
- 每当发生错误时:将新目录中的SVN文件复制到损坏的源文件中
- 重复,直到开心;)
这个awfull问题的批处理解决scheme。
for /f "tokens=* delims=" %%i in ('dir /s /b /a:d *.svn') do ( if not exist %%i\text-base ( mkdir "%%i\text-base" ) else ( echo already exist "%%i\text-base" ) )