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'