Mac中使用git避免提交.DS_Store文件

image.png

1、.DS_Store文件介紹

.DS_Store 是 Finder 用來存儲這個文件夾的顯示屬性的:比如文件圖標的擺放位置。刪除以后的副作用就是這些信息的失去。(當然,這點副作用其實不是太大)。雖然有辦法可以禁止 .DS_Store 文件的生成,但是我個人不建議這樣,只需要在 Git 中忽略 .DS_Store 文件即可。

2、先刪除原有的.DS_Store:

如果你的項目中還沒有自動生成的 .DS_Store 文件,那么直接將 .DS_Store 加入到 .gitignore 文件就可以了。如果你的項目中已經存在 .DS_Store 文件,那就需要先從項目中將其刪除,再將它加入到 .gitignore。

find . -name .DS_Store -print0 | xargs -0 git rm -f --ignore-unmatch

命令解釋:在當前文件夾以及當前文件夾的子文件夾中找到所有的.DS_Store文件,并將找到的文件通過管道傳給xargs來處理。注意幾個參數的理解:
-print0:在find后不添加換行符(-print默認會添加換行符)
-0:將管道送來的字符串當做普通的字符串,不做任何轉義處理。

3、建立.gitignore文件

vi .gitignore
然后添加.DS_Store作為忽略:

.DS_Store

如果.gitignore文件已存在,直接將將 .DS_Store 加入到 .gitignore

echo .DS_Store >> ~/.gitignore

4、提交到git

git add --all
git commit -m 'delete .DS_Store'
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容