2

我已将我的计算机从 Windows XP 升级到 Windows 8,并选择保留我的所有文件和设置。升级后我安装了 TortoiseSVN 版本 1.710,这是我还在 XP 上使用的版本。但现在它似乎不再识别 SVN 文件夹。在我的文件夹上,我没有覆盖图标,当我右键单击时,我只会得到“结帐”选项,就好像文件夹是空的或不包含任何版本控制一样。当我在资源管理器中选择“显示隐藏文件”时,我可以看到 _svn 文件夹肯定存在。我确实注意到它被标记为“只读”,但删除它并不能解决问题。
有谁知道为什么 Tortoise 没有检测到 _svn 文件夹?

4

2 回答 2

3

答案就在问题中。从 1.6 版开始,Tortoise 不再识别 _svn 文件夹,而是使用 .svn 文件夹。在我的 Windows XP 机器上,我可能曾经选择安装允许使用 _svn 文件夹的“hack”,即使我升级到 1.7,它仍然保持这种状态。
由于升级到 Windows 8 保留了文件,但需要全新安装所有软件,因此丢失了使用 _svn 文件夹的选项。所以我必须找到一个解决方案,将我所有的 _svn 文件夹重命名为 .svn。幸运的是,windows 8 附带了 Powershell 3.0,这使得这很容易。
只需打开 Powershell 窗口,将目录更改为“文档”文件夹并键入:

Get-ChildItem _svn -recurse -force | foreach {rename-item $_ $_.Name.Replace("_",".")}

这将重命名所有 _svn 文件夹,一切都解决了。

于 2012-11-13T13:37:48.563 回答
0

是“_svn”还是“.svn”?新签出的项目对你有用吗?

我的猜测是升级以某种方式将文件夹从“.svn”重命名为“_svn”,导致 Tortoise 无法拾取它。在这种情况下,您必须重命名它们,它应该可以再次工作。

我过去一直在 Win8 上运行 TortoiseSVN 没有问题。

于 2012-11-13T13:37:48.500 回答