我在64位Windows 7 Professional上使用64位TortoiseSVN。每次签出或更新都会失败,并显示以下错误消息。
Error: Can't move
Error: '[...]\.svn\tmp\entries'
Error: to
Error: '[...]\.svn\entries':
Error: The file or directory is corrupted and unreadable.
然后CHKDSK在重新启动后运行,这让我感到紧张。
为什么会发生这种情况或如何避免呢?
#1 楼
这是Window 7中的一个已知错误,计划在SP 1中修复:http://subversion.wandisco.com/blogs/windows-7-bogus-errorfilecorrupt-error-.html
现在有可用的修补程序:
http://support.microsoft.com/kb/982927/en-ushttp://support.microsoft.com/kb/ 2498472 / zh-cn
评论
我遇到了同样的问题,并尝试安装HotFix。它没有解决我的问题。但是,禁用我的防病毒软件可以解决此问题。
– Brian Bacy
10-10-25在20:07
+1。修补程序为我解决了问题-事先禁用AV无法解决问题。
–约书亚·麦金农
2010-10-27 22:46
显然,此修补程序的链接已损坏。
–坦率的V
2011-3-7在19:55
...而且它似乎在SP1中对我来说不是固定的。有人听说过此事吗?
–詹姆斯·克劳利(James Crowley)
2011年3月24日23:45
由于某种原因,他们更改了KB号。我更新了OP的答案以反映新位置。
– SiegeX
2011年4月11日23:40
#2 楼
我遇到了同样的问题(使用MS Security Essentials)。我“认为”这可能与监视程序活动的AV程序有关。看来MS SE“认为”一个恶意脚本正在运行并将其停止。我尝试在“实时保护”中禁用“计算机上的监视文件和程序活动”,解决问题的方法。 TortoiseSVN \ bin \ TortoiseProc.exe“”“ C:\ Program Files \ TortoiseSVN \ bin \ TSVNCache.exe”
到目前为止,这两种方法都对我有用。 (自从我更改了选项以来,我就能够始终进行较大的签出。)我更喜欢第二种,因此MS SE无论如何仍会监视潜在的恶意活动。
评论
不,请参见tinyurl.com/w7corrupt
–马特·麦克亨利(Matt McHenry)
2010-2-11在13:38
非常感谢。我在Windows XP中拥有卡巴斯基安全软件,您的解决方案也对我有用。
–samir105
2011年12月2日,下午6:32
#3 楼
这就是Windows Indexing Service的全部工作。请参阅SVN:TortoiseSVN无法移动。文件或目录已损坏且无法读取(Windows 7)。评论
我删除了AV实时保护,但偶尔还是得到了。这有帮助。
–orip
2010年2月1日于16:16
是。另请参阅Cragly的答案以获取简洁的逐步修复。
–克里斯托弗·布伦斯(Christopher Bruns)
2011-2-13在15:45
#4 楼
我遇到了同样的问题,但是使用32位TortoiseSVN(在Win7 x64上为1.6.6)。禁用/更改防病毒功能没有帮助。降级到TortoiseSVN 1.5.10都没有(这只是导致无法再读取已检出的存储库目录的结果。
帮助配置Windows Indexing Service使其不为我的SVN /源代码目录。我在这里找到了提示:http://schleichermann.wordpress.com/2009/12/09/svn-tortoisesvn-cant-move-the-file-or-directory-is-corrupted-and-unread- Windows-7 /
评论
我尝试禁用我的卡巴斯基,但没有帮助。但是,为我的工作副本禁用索引服务可以解决此问题。
–哈希
2010年1月3日15:45
#5 楼
这是我发现的一种解决方案,可以像对待对待一样工作。这是SVN的摘录:TortoiseSVN无法移动..文件或目录已损坏且不可读(Windows 7)。单击开始菜单按钮,然后在文本框中单击开始搜索。
键入“ Windows索引”
单击搜索中应出现的“索引选项”(如果将“查看方式”更改为“也可以在控制面板中找到”)大号或小号图标。不过,我不确定它的类别是什么。
出现“索引选项”框时,单击“修改”按钮。这将弹出“索引位置”对话框,您应该在其中看到一些“位置”列表,其中的硬盘驱动器在列表中。
将所需的硬盘驱动器扩展到目录的根文件夹。您正在使用SVN的文件,并确保未选中该框。即使我在上一篇文章中描述了文件夹选项,也已在这里为我检查了它。另请注意,即使将其展开,硬盘驱动器也很可能会折叠起来,并且未选中其复选框。文件夹和此处的每个文件夹都在“索引位置”对话框中进行了检查。取消选中此处的适当文件夹(这是我的SVN项目的工作副本所在的位置)后,一切似乎都按我期望的方式工作。问题。
#6 楼
文章“在移动文件时获取ERROR_FILE_CORRUPT ...结果:重新启动时出现Chkdsk(可复制并确认)”解释了为什么会发生这种情况,并且其中的示例程序准确地显示了如何在Windows 7上获得此错误。找到解决此问题的方法。[更新]
此问题已在Windows 7 Service Pack 1和Windows Server 2008R2 Service Pack 1中得到解决。
#7 楼
这是问题“文件或目录已损坏且无法读取。” Windows 7或Vista即将推出,因为您已打开索引服务。要解决此问题,请打开svn目录或其父目录的索引服务
或
暂时关闭索引编制:
这是怎么做?
1)转到控制面板-索引编制选项
2)单击暂停。默认情况下,这会在接下来的15分钟内暂停索引编制。
3)现在执行提交。您大声承诺接下来的15分钟
评论
索引服务器不会导致此问题。任何监视更改的应用程序目录都可能导致此问题。
–伯特·赫伊本
2011年9月13日上午10:16
#8 楼
我们遇到了同样的问题。如果您安装了病毒扫描程序,则可能是引起此问题的原因。尝试在结帐之前禁用扫描。http://groups.google.com/group/tortoisesvn/browse_thread/thread/4d8bdcea4fd14fce?pli=1
对于我们,我们只遇到了很大的更新/签出问题。平均或较小的更新都可以正常工作。我不知道为什么会这样,但是我完全可以看到与病毒扫描程序相关的问题以这种方式不一致。
评论
可能会的。我通过TortoiseSVN和命令行SVN遇到了问题。此外,无论是小型提交还是大型更新,我都经历过。有趣的是,通常在遇到此错误后,我可以重复执行完全相同的操作,并且该操作将毫无问题地完成。
–David Alpert
09-10-29在20:10
#9 楼
我在McAfee 8.7i上也遇到了同样的问题。#10 楼
我得到的是完全相同的错误,但更新时又遇到了另一个错误(“找不到指定的文件”)。 >我已将文件从“地图”重命名为“地图”并提交。提交工作正常,但检出失败,出现“目录已损坏”错误。就我而言,已通过进入Repo-Browser并删除文件“ map”进行了修复。因此,我仍然在版本控制中保留了原始的未重命名文件(“地图”)。从那时起,结帐工作正常。
#11 楼
我正在运行Panda Cloud Anti-Virus并收到此错误-如上所述,禁用此错误后,该错误完全消失了。#12 楼
不知道您是否仍然遇到此问题,但是我发现我的Google搜索中没有找到解决方案。我在博客上发布了具体说明。希望这可以帮助。#13 楼
我有一个目录-C:\ Users \\ workspace \-在这里签出项目。我发现,如果我进入Windows 7中的索引选项,然后单击“修改”,出现一个新的弹出窗口。从此弹出窗口中,我可以看到C驱动器以及展开和折叠箭头。我只是取消选中了我的工作区目录。大概应该禁用该目录的索引。
我仍然遇到错误,但是我认为这可能是解决方案的有用信息。注意:无论如何我都会因索引暂停而出现错误,因此可能还有另一个因素。
评论
我终于解决了我的问题。这种方法似乎有所帮助,但是我发现在提交单个模块目录(在项目中提交Drupal模块)时出现的错误更少。有一些离群值只是拒绝提交。我在这里的方法是将这些模块目录从项目SVN(即已签出的项目)中导出,将目录从项目中删除,进行提交,然后将导出的模块复制回并再次提交。尽管我的版本历史记录因此丢失/中断,但是这停止了错误。
–亚伦·牛顿
2010-6-5 15:07
评论
CHKDSK的输出是什么?您可能会遇到更严重的问题。您甚至如何安装它?它在安装过程中崩溃并烧毁。 :-(
我也遇到了这个问题-我的病毒扫描程序是McAfee VirusScan Enterprise 8.7.0i。有趣的是,它似乎并不取决于病毒扫描程序的确切品牌:在Web上,可以为使用Microsoft Security Essentials和[Kaspersky] [2]的用户找到类似的错误报告。 [2]:forum.kaspersky.com/…
Blech,我有同样的问题,并且排除svn + TortoiseSVN进程和svn工作目录没有帮助。如果我没有完全关闭实时监视,则会不断损坏.svn目录。糟透了。
我们商店中所有运行Win 7 64位的开发人员都遇到相同的问题。