我正在尝试将 svn co 传输到 Ubuntu 上通过 samba 共享的目录,传输到 OS X,但是出现以下错误(在 OS X 中)。
svn: In directory 'site/product/tests'
svn: Can't open file 'site/product/tests/.svn/tmp/text-base/._base.py.svn-base': No such file or directory
我的 smb.conf 文件包括以下更改:
unix extensions = no
browseable = yes
public = yes
writable = yes
delete readonly = yes
create mask = 0775
directory mask = 0775
valid users = %S
read only = no
结帐在本地(在 Ubuntu 机器上)工作正常。
我错过了什么?
更多详情:
后来检查发现,svn错误找不到带有3个,然后是2个下划线的文件:
.___init__.py.svn-base
而在 OS X 中列出目录则显示 2 个,然后是 2 个下划线:
__init__.py.svn-base
并且在 Ubuntu 上成功签出时列出相同的目录没有任何内容(因为它是一个临时目录?)
我已尝试mangled = no
在共享设置中进行设置,但没有效果。
答案1
因此,需要澄清的是,运行时会收到错误消息SVN 公司在 OSX 上安装共享吗?
您是否检查过错误消息中提到的文件和目录?我猜您的 Samba 配置弄乱了该名称,这就是为什么它没有出现在 OSX 安装上。如果是这种情况,并且文件._base.py.svn-base存在于该目录中,你不会从 OSX 端看到它,但你会在 Ubuntu 端看到它。相反,你可能会看到一个文件“___”(三个下划线)作为其扩展名。
Samba 默认会破坏名称,因此,你可以在smb配置文件(我相信这是一个全球性的选择,但它可能是每股的):
mangled names = no
将其添加到配置后,重新启动 Samba,在 OSX 上重新安装共享,然后再次检查目录。如果这是正确的诊断,您现在应该可以看到该文件。