当我在我的目录上执行'git status'时,它会显示一堆看似重复的未跟踪文件。唯一的区别是所有都有._
的前缀。例如:我需要添加的一个未跟踪文件是... app/assets/stylesheets/categories.css
,另一个文件显示为app/assets/stylesheets/._categories.css
。
有谁知道这是怎么回事?似乎没有关于GitHub的好文档。
答案 0 :(得分:12)
如果对于文件foo,你有另一个._foo,并且你在Mac上,那么点下划线文件就是保存文件资源fork / metadata的地方。
(详见“DS_Store, dot underscore (._
), resource forks and annoyed Windows users”)
.DS_Store
类似于Windows XP制作的thumbs.db
文件,用于存储“文件夹的自定义属性,例如图标的位置或背景图像的选择。”dot-underscore (
._
) files是讨厌的小虫子。当您使用Finder将文件传输到非Mac系统(在这种情况下是Windows Server)时,它似乎将文件分成两部分 - 数据和资源分支。将文件复制回Mac时,Finder会再次合并这两位。 Windows无法使用资源分叉,因此不需要它,您可以将其删除,但是在其他人之后进行清理会很麻烦!
另请参阅“Is there any way to prevent a Mac from creating dot underscore files?”
答案 1 :(得分:6)
如果您更新全局.gitignore
(位于C:/Users/user/.gitignore
或用户主目录所在的位置),则可以添加以下行:
._*
当您执行git status
时,它会阻止它们显示,并且不会通过git add -A
添加它们。
这是我添加到我的内容,以防止各种操作系统将垃圾插入我们的存储库。
# OS generated files #
######################
.DS_Store?
ehthumbs.db
._*
# Icon?
Thumbs.db
答案 2 :(得分:3)
它们与git
本身无关;它们是OS X创建的元数据文件。
答案 3 :(得分:0)
Mac提供了命令行命令,可以从App Store免费下载命令行实用程序。这会清理._文件。 命令是$ dot_clean