关于GitHub上传中忽略.DS_Store的方法说明

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于GitHub上传中忽略.DS_Store的方法说明相关的知识,希望对你有一定的参考价值。

参考技术A 首先我申明我使用的环境是Mac,并没有在windows上尝试过这个,希尝试了的同学可以在评论中交流一下。

在git的使用过程中,有很多文件是不需要被提交到版本库中的,比如我们这次提到的.DS_Store文件,这个文件在mac中是管理文件夹的位置之类的信息,所以并没有必要上传到git中,这个时候就需要用git.gitignore文件来忽略此类文件。

如果你需要忽略的文件在远端仓库中已经存在了,name你需要将远端的文件删除掉才可以。
使用命令:

git rm –cached 把文件.DS_Store从git的索引库中移除,但是对文件.DS_Store本身并不进行任何操作也就是说本地还是有.DS_Store文件的,但是远端却没有了

在默认情况下gitgnore文件是不存在的,所以我们
需要把这个文件新建。
Mac中显示隐藏文件的方法是 command+shift+.

首先在终端中进入Git目录,输入新建命令

这样就在文件中新建了一个.gitignore隐藏文件

可以使用

进行查看,然后对文件进行编辑

进入之后按下 i 进入编辑状态

配置语法:

以斜杠“/”开头表示目录;

以星号“*”通配多个字符;

以问号“?”通配单个字符

以方括号“[]”包含单个字符的匹配列表;

以叹号“!”表示不忽略(跟踪)匹配到的文件或目录;

此外,git 对于 .ignore 配置文件是按行从上到下进行规则匹配的,意味着如果前面的规则匹配的范围更大,则后面的规则将不会生效;

我配置的是(我只不想让.DS_Store上传,如果读者想让其他文件不上传只需要在后面添加上文件名即可)

编辑好后退出vi模式即可
退出方法为:点击ESC,然后输入:wq命令回车进行保存。

完成后再使用git commit,git push上传提交。
在使用git status进行查看就可以了。

之后再也不用担心这个文件的冲突了

[macOS] git忽略所有的.DS_Store文件

最彻底的方法如下:

vi ~/.gitignore_global

输入以下内容

# OS generated files #
######################
.DS_Store
.DS_Store?
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db

再执行一下命令

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

 

Have fun with macOS

以上是关于关于GitHub上传中忽略.DS_Store的方法说明的主要内容,如果未能解决你的问题,请参考以下文章

.gitignore配置

使用 Tower 忽略 gitignore 文件中的 .DS_Store

[macOS] git忽略所有的.DS_Store文件

如何忽略未跟踪文件中的 .DS_Store? [复制]

Mac中git忽略DS_Store文件

Mac中git忽略DS_Store文件