这些隐藏('._'前缀)文件在我的git repo中是什么?

Jak*_*cst 13 git

当我在我的目录上执行'git status'时,它显示了一堆看似重复的未跟踪文件.唯一的区别是所有都有前缀._.例如:我需要添加的一个未跟踪文件将是... app/assets/stylesheets/categories.css而另一个文件将显示为app/assets/stylesheets/._categories.css.

有谁知道这是什么一回事?似乎没有关于GitHub的好文档.

Von*_*onC 12

正如这里提到:

如果对于文件foo,你有另一个._foo,并且你在Mac上,则点下划线文件是保存文件资源fork/metadata的地方.

(在" DS_Store,点下划线(._),资源分叉和恼火的Windows用户 " 中有更详细的描述)

.DS_Store类似于thumbs.db文件的Windows XP制造和用于存储"文件夹的自定义属性,如图标的位置和背景图像的选择."

点下划线(._)文件是讨厌的小家伙.当您使用Finder将文件传输到非Mac系统(在这种情况下是Windows Server)时,它似乎将文件分成两部分 - 数据和资源分支.将文件复制回Mac时,Finder会再次合并这两位.Windows无法使用资源分支,因此不需要它,您可以将其删除,但是需要在其他人之后进行清理会很麻烦!

另请参阅" 有没有办法阻止Mac创建点下划线文件? "


小智 7

如果您更新全局.gitignore(在C:/Users/user/.gitignore用户主目录的位置或位置),则可以添加以下行:

._*
Run Code Online (Sandbox Code Playgroud)

当你这样做时,它会阻止它们出现git status,并且它们不会被添加git add -A.

这是我添加到我的,以防止各种操作系统将垃圾插入我们的回购.

# OS generated files #
######################
.DS_Store?
ehthumbs.db
._*
# Icon?
Thumbs.db
Run Code Online (Sandbox Code Playgroud)