怎麼讓 git 忽略 .DS_Store

不少前端開發攻城獅都會將 Mac OSX 做爲本身的開發環境,在這個環境下每每會出現一些奇妙的問題,好比這篇文章的主要內容——如何讓你的 git 忽略 .DS_Store前端

什麼是 .DS_Store

因爲這個文件每每前面有一個 . 因此在 Finder 中是不可見的,可是它確確實實存在於每個文件夾中,甚至包含外部設備node

這個文件存儲了這個文件夾的元數據信息,好比文件夾的圖標信息、窗口位置、視圖等等git

咱們能夠在一個目錄中打開終端:bash

# ls -a
複製代碼

這個命令能夠顯示全部文件,經過這樣的方式就能夠看到 .DS_Storeide

那麼若是咱們刪除了這個文件會發生什麼呢?事實上並不會有不少嚴重的影響,只是會暫時丟失這個文件夾的元數據,而且這個文件會被 Mac OS X 從新生成idea

因爲你們的開發平臺不一樣(Mac/PC),這就致使了團隊寫做中會致使一些問題,咱們能夠令 git 忽略這個文件spa

在本地倉庫忽略

要忽略一個目錄下的某個文件或者文件夾,只須要在 .gitignore 中進行配置,咱們能夠在這個本地倉庫的根目錄下配置 .gitignore 文件,如此一來這個文件夾下的全部子文件夾的.DS_Store 都會被忽略,如:code

node_modules
dist
.vscode
deploy.sh
.DS_Store
複製代碼

若是咱們在建立 .gitignore 以前.DS_Store 就已經存在於這個文件中,咱們須要經過 git rm --cached .DS_Store 刪除這個索引索引

可是在每個項目中都這樣進行配置難免有些繁瑣,咱們也能夠在全局進行配置開發

在全局進行配置

咱們的 git 通常會按照根目錄下的 .gitconfig 中的配置運行,咱們能夠先在根目錄下建立一個 .gitignore_global 文件,格式和.gitignore相同,其中的內容是全部要忽略的文件:

.DS_Store
node_modules
.vscode
.idea
複製代碼

以後咱們要在 .gitconfig 添加這條配置,將下面兩行添加到文件末尾

[core]
    excludesfile =/Users/你本身的用戶名/.gitignore_global
複製代碼

end

相關文章
相關標籤/搜索