前言 :
關於.ds_store是什麼可以參考另一文章 如果刪除git中的.ds_store
簡單的說mac每個目錄都會有個檔案叫.ds_store,它是用於儲存當前資料夾的一些meta資訊。所以每次檢視git目錄的狀態,如果沒有add這個.ds_store檔案,會有untracked files:
的提示,add了它,又會常有changes not staged for commit:
的提示,是不是像個蒼蠅一樣特別煩?要解決這個煩人的小妖精,我們需要用到.gitignore檔案去配置git目錄中需要忽略的檔案。
.gitignore
檔案用於忽略檔案,其規範如下
1.所有空行或者以注釋符號 # 開頭的行都會被 git 忽略。
2.可以使用標準的 glob 模式匹配。
3.匹配模式最後跟反斜槓(/)說明要忽略的是目錄。
4.要忽略指定模式以外的檔案或目錄,可以在模式前加上驚嘆號(!)取反。
glob
模式要點:
*:任意個任意字元,
:匹配任何乙個在方括號中的字元,
?:匹配乙個任意字元,
[0-9]:匹配字元範圍內所有字元
所以,我們只需要在對應的git目錄下,建立乙個.gitignore檔案,然後配置上.ds_store即可,步驟如下:
1.命令列下使用touch .gitignore建立.gitignore檔案(已有的直接到第二步)
wdw:test wdw$ touch .gitignore
2.open .gitignore,輸入.ds_store 換行再輸入*/.ds_store
沒有.gitignore直接新增儲存
本來已有.gitignore的在檔案最後新增即可
3.儲存即可生效,這裡是忽略了當前目錄的.ds_store以及其子目錄的.ds_store
這樣問題就解決了麼?並沒有,因為在今後的使用中,我發現我需要在所有git目錄下加這樣的.gitignore配置,心都操碎了。有沒有辦法可以全域性配置呢?讓這個配置對所有的git目錄都生效。git config可以幫到我們。
git config --list命令可以讓你檢視現有的配置,(在這裡我們就先忽略其他的配置項了,有興趣的同學可以戳這裡做更多的了解)實際上它是乙個檔案,檔案的位置在使用者根目錄,名稱是.gitconfig。以下是新增全域性忽略檔案的步驟:
建立~/.gitignore_global檔案,把需要全域性忽略的檔案寫入該檔案,語法和.gitignore一樣到這裡,忽略檔案的操作已經搞定了.在~/.gitconfig中引入.gitignore_global檔案
[core]
excludesfile = /users/reon/.gitignore_global
也可以通過git config --global core.excludesfile/users/reon/.gitignore_global命令來實現
配置成功,可以去驗證是否生效了
如果要刪除github上本來的檔案可以參考如何刪除github上的檔案
git 全域性刪除專案中的 DS Store檔案
一 未提交的專案執行下面的操作,提交檔案時候則不提交.ds store檔案 1.新增忽略 cd到git目錄下新建.gitignore檔案並配置忽略檔案 1 vim gitignore 2 輸入以下內容後儲存 ds store ds store 2.提交專案 二 如果包含.ds store的專案已經提...
如何刪除GIT中的 DS Store
使用 mac 的使用者可能會注意到,系統經常會自動在每個目錄生成乙個隱藏的 ds store 檔案。ds store 英文全稱 desktop services store 是一種由蘋果公司的mac os x作業系統所創造的隱藏檔案,目的在於存貯目錄的自定義屬性,例如檔案們的圖示位置或者是背景色的選...
Git全域性忽略和Vim Session的結合
我知道這個功能也是通過google來的,stack overflow上的乙個回答給出了方案,位址是 我這裡就當做是翻譯一下了。這裡的全域性忽略是只git的global級,也就是乙個使用者的範圍內有效,不是系統範圍內有效。要實現git的全域性忽略,可以在通過配置全域性的core.excludesfil...