在svn存储库中添加符号链接后,我一直在该目录中收到错误

时间:2009-01-29 03:18:40

标签: svn symlink

我创建了一个从/ www / dir2 /到/ home / dir2 /的符号链接 然后我将它添加到存储库(svn add / www / dir2 /) 现在,如果我进入该目录,并尝试在那里使用svn做任何事情,我会收到一个“svn:warning:'。'不是工作副本“错误 如果我尝试添加子目录(svn add / www / dir2 / dir5),我收到错误:
svn:'dir2'不是工作副本
svn:无法打开'dir2 / .svn / entries'文件:没有这样的文件或目录 我尝试提交目录添加,并且工作正常

从日志中:
改变路径:
   A / www / dir2
svn pl dir2 /
'dir2'上的属性:
  svn:特别

任何帮助将不胜感激。谢谢!

2 个答案:

答案 0 :(得分:17)

Subversion不遵循符号链接。提交符号链接时,它将作为常规文件存储在数据库中,并设置svn:special属性。有关详细信息,请参阅manual

如果要将该目录添加到存储库,则必须将其(而不是符号链接)移动到工作副本中,然后添加它。

答案 1 :(得分:8)

另一种选择(通常只有当你希望svn遵循的目录符号链接时)才会使用类似的东西:

mount --bind / real / path / to / dir / path / inside / working / dir

然后,您可以毫无问题地将该路径添加到仓库。

在大多数情况下,只是移动目录是一个更好的主意(它不会混乱fstabs,你不必一直重新安装它等) - 但我想我会通过一个提示这可以使您免于在提交它的名称中加倍目录。