Git中全局忽略.DS_Store文件

前言 :
關于.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模式要點:
  1. *:任意個任意字符,
  2. ?:匹配一個任意字符,

所以,我們只需要在對應的Git目錄下,創建一個.gitignore文件,然后配置上.DS_Store即可,步驟如下:
1.命令行下使用touch .gitignore創建.gitignore文件(已有的直接到第二步)
wdw:test wdw$ touch .gitignore
2.open .gitignore,輸入.DS_Store 換行再輸入*/.DS_Store

沒有.gitignore直接添加保存

本來已有.gitignore的在文件最后添加即可
本來已有.gitignore的在文件最后添加即可

3.保存即可生效,這里是忽略了當前目錄的.DS_Store以及其子目錄的.DS_Store

這樣問題就解決了么?并沒有,因為在今后的使用中,我發現我需要在所有Git目錄下加這樣的.gitignore配置,心都操碎了。有沒有辦法可以全局配置呢?讓這個配置對所有的Git目錄都生效。git config可以幫到我們。

git config --list命令可以讓你查看現有的配置,(在這里我們就先忽略其他的配置項了,有興趣的同學可以戳這里做更多的了解)實際上它是一個文件,文件的位置在用戶根目錄,名稱是.gitconfig。以下是添加全局忽略文件的步驟:

  1. 創建~/.gitignore_global文件,把需要全局忽略的文件寫入該文件,語法和.gitignore一樣
  1. ~/.gitconfig中引入.gitignore_global文件
    [core] **
    excludesfile = /Users/reon/.gitignore_global **
    也可以通過
    git config --global core.excludesfile/Users/reon/.gitignore_global
    命令來實現
  2. 配置成功,可以去驗證是否生效了

到這里,忽略文件的操作已經搞定了.

如果要刪除github上本來的文件可以參考如何刪除github上的文件

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

推薦閱讀更多精彩內容

  • 不廢話,直接上命令 1、touch .gitignore_global 2、open .gitignore_glo...
    油麥菜洋蔥頭閱讀 1,183評論 1 1
  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,991評論 19 139
  • 有很多文件不必使用git管理。例如Eclipse或其他IDE生成的項目文件,編譯生成的各種目標或臨時文件等。 使用...
    Ten_Minutes閱讀 2,184評論 0 4
  • 1.什么是.DS_Store? .DS_Store,用于存儲當前文件夾的一些Meta信息。每次提交代碼時,我都要在...
    多飛閱讀 12,737評論 3 25
  • 誰是你生命中最重要的貴人?你是否清楚現在最需要什么類型的貴人? 他人的無心之言有時卻會一語驚醒夢中人,所以多和有思...
    小團子媽媽閱讀 170評論 0 0