Git中全域性忽略 DS Store檔案

2021-07-30 22:19:25 字數 1642 閱讀 7202

前言 :

關於.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...