You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

切换至SAMBA共享盘后,Cornerstone操作SVN生成._前缀备份文件求助

解决Cornerstone操作SAMBA共享SVN工作副本时生成._前缀文件的问题

这是个典型的跨文件系统与SVN客户端交互的问题,我帮你梳理下原因和可行的解决办法:

为什么会生成._前缀文件?

这些._*文件其实是Mac系统为了兼容非APFS/HFS+文件系统而生成的资源分支/扩展属性存储文件。当你在Mac上访问SAMBA共享的CentOS服务器(通常用ext4文件系统)时,由于Linux文件系统不支持Mac特有的扩展属性,系统会自动把这些属性单独存成._开头的文件。而Cornerstone在执行还原、提交等操作时会修改文件内容,触发系统生成这些附属文件,SVN默认没有忽略它们,所以就显示为未版本控制的文件了。

解决办法

1. 让SVN全局忽略._文件(快速治标)

如果不想折腾服务器配置,最简单的方式是让SVN自动忽略所有._开头的文件:

  • 打开终端,编辑SVN的全局配置文件:
    open ~/.subversion/config
    
  • 找到global-ignores这一行,去掉行首的注释符号(#),然后在列表末尾添加._*,修改后类似:
    global-ignores = *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo *.rej *~ #*# .#* .*.swp .DS_Store ._*
    
  • 保存配置后,再打开Cornerstone,这些._文件就不会再显示为未版本控制的文件了。

2. 配置SAMBA服务器支持Mac扩展属性(彻底治本)

如果你有权限修改CentOS上的SAMBA配置,可以从根源上避免生成._文件:

  • 编辑SAMBA的配置文件:
    sudo vi /etc/samba/smb.conf
    
  • 在你的共享目录对应的配置段(比如[your-share])里添加以下参数:
    vfs objects = fruit streams_xattr
    fruit:metadata = stream
    fruit:model = MacSamba
    fruit:posix_rename = yes 
    fruit:veto_appledouble = no
    fruit:wipe_intentionally_left_blank_rfork = yes
    fruit:delete_empty_adfiles = yes
    
  • 重启SAMBA服务让配置生效:
    sudo systemctl restart smb
    
    这个配置会让SAMBA支持Mac的扩展属性存储,不再需要生成._文件来兼容。

3. 批量清理已存在的._文件

如果已经积累了很多._文件,可以用终端命令批量删除:

# 先预览要删除的文件,确认无误后再执行删除
find . -name "._*" -type f
# 确认后执行删除
find . -name "._*" -type f -delete

内容的提问来源于stack exchange,提问作者Snow Ball

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 07:30:03