Tortoisesvn在提交后没有显示正确的状态

时间:2010-04-17 02:43:16

标签: svn tortoisesvn

我打算在tigris.org上问这个,但是他们在论坛上有维护。

我的环境: Windows 7 x64,Tortoisesvn最新x64,简单回购。

我在做什么: 我正在向repo添加一个新文件,然后执行SVN Commit。这个操作是成功的,我可以从trac或直接在repo中看到它。

我希望: 要将该文件的图标视为绿色选中标记。

我拥有的: 我看到蓝色PLUS图标,就像我没有完成提交一样。

但是,如果我只在该文件夹中创建任何新文件(没有任何提交或更新),则图标会立即更改为选中标记。多么神奇啊!

我不希望这里有人有答案,这可能是一个错误,但谁知道))

干杯!

3 个答案:

答案 0 :(得分:11)

清理项目通常会更正图标。右键单击该文件夹,然后选择TortoiseSVN - >清理。我怀疑这会更新TortoiseSVN缓存。 (我的环境也是Win 7 x64)

更新:在TortoiseSVN 1.7中,清理现在会打开一个对话框,其中包含“刷新外壳覆盖”的显式选项。来自cleanup documentation

  

刷新外壳覆盖

     

有时,shell覆盖,尤其是在资源管理器左侧的树视图中,不会显示当前状态,或者状态缓存无法识别更改。在这种情况下,您可以使用此命令强制刷新。

更新2 :可以使用TortoiseProc.exe和客户端挂钩脚本在1.7中自动执行此操作。我经常在提交后遇到不一致的状态,所以我添加了一个post-commit钩子脚本,将以下命令包装到一个名为refresh_shell.bat的批处理文件中,

"C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:cleanup /nodlg /noui /refreshshell /pathfile:%1

(批处理文件是接受包含已提交路径的临时文件的参数所必需的。)

还要注意,在配置钩子脚本时,工作副本路径是启用了挂钩的目录树。

有关使用TortoiseProc.exeAutomating TortoiseSVN的更多信息,请参阅TortoiseSVN's Settings,了解有关客户端端钩脚本的更多信息。

答案 1 :(得分:2)

关闭并打开资源管理器窗口没有帮助。杀死TSVNCache.exe进程帮助。

答案 2 :(得分:1)

是的,只是在完成另一个操作之前,窗格不会刷新。我也在Windows XP上看过这个。我想这是TortoiseSVN中的一个错误。