GitHub隐藏.DS_Store文件
GitHub隐藏.DS_Store文件

GitHub隐藏.DS_Store文件

.DS_Store 是 macOS 自动生成的垃圾文件,不建议上传到GitHub仓库中。

现有项目中隐藏.DS_Store文件

1、取消被追踪的 .DS_Store

如果当前的项目已经上传了 .DS_Store 文件,可以先取消 .DS_Store 文件的追踪:

git rm --cached .DS_Store
git commit -m "Remove .DS_Store from repo"

如果不手动取消 .DS_Store的追踪,那么即使添加 .gitignore,也会上传 .DS_Store 文件。

2、全局忽略

配置 .gitignore_global 文件,设置全局忽略:

echo ".DS_Store" >> ~/.gitignore_global
git config --global core.excludesfile ~/.gitignore_global

设置后,~/.gitconfig文件中会新增:

[core]
    excludesfile = /Users/fangjunyu/.gitignore_global

表示排查文件为~/.gitgnore_global文件,而gitgnore_global文件的内容为:

.DS_Store

这样就实现了在GitHub上隐藏 .DS_Store 文件。

代码解析

1、echo “.DS_Store” >> ~/.gitignore_global

这段代码会往“~/.gitignore_global”文件中,追加一行 .DS_Store:

cat ~/.gitignore_global 
.DS_Store

也可以使用 vi 手动编辑:

vi ~/.gitignore_global
.DS_Store   // 忽略 .DS_Store
Thumbs.db   // 忽略 Thumbs.db
*.log   // 忽略 *.log

可以添加多个全局忽略规则。

2、配置Git的全局配置文件

git config --global core.excludesfile ~/.gitignore_global

这段代码表示,在Git的全局配置文件(~/.gitconfig)中添加一条规则:以后Git在忽略文件时,会额外读取 ~/.gitignore_global 文件。

–global表示对当前用户的所有Git仓库生效,不局限于某个项目。

配置完成后,可以在 ~/.gitconfig文件中看到一行:

[core]
    excludesfile = /Users/fangjunyu/.gitignore_global

总结

~/.gitconfig为Git全局配置文件,~/.gitignore_global是自己创建的全局忽略列表,两者作用于当前用户的所有Git项目。

如果需要查看Git全局配置文件,也可以使用下面的命令列出全局配置:

git config --global --list
   

如果您认为这篇文章给您带来了帮助,您可以在此通过支付宝或者微信打赏网站开发者。

欢迎加入我们的 微信交流群QQ交流群,交流更多精彩内容!
微信交流群二维码 QQ交流群二维码

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注