1. 程式人生 > 實用技巧 >Git的自定義和特殊檔案配置

Git的自定義和特殊檔案配置

目錄

備註:

本文參考於廖雪峰老師的部落格Git教程。依照其部落格進行學習和記錄,感謝其無私分享,也歡迎各位檢視原文。

知識點

  • 配置Git顯示顏色git config --global color.ui true

  • .gitignore配置忽略檔案,且要提交到版本庫

  • git add -f <file>,強制新增filegit check-ignore檢查忽略規則

自定義Git

在安裝Git時,有對Git進行全域性配置,使用者名稱和郵箱(user.name

user.email)

也可以配置其他選項

  • 配置Git顯示顏色
$ git config --global color.ui true

忽略特殊檔案

實際開發中,總有一些特殊檔案不能提交。比如儲存了資料庫密碼的配置檔案等。

但是這些檔案建立後,在git status時會顯示Untracked files ...,而且不小心新增上後就會被提交。

.gitignore忽略檔案

Git中,可以在Git工作區的根目錄下,建立一個.gitignore檔案,寫上需要忽略的檔名,Git就會自動忽略這些檔案。

關於不同語言和環境中推薦的忽略檔案的配置,可以檢視github專案gitignorehttps://github.com/github/gitignore

中示例。

忽略檔案的原則是:

  1. 忽略作業系統自動生成的檔案,比如縮圖等;

  2. 忽略編譯生成的中間檔案、可執行檔案等,也就是如果一個檔案是通過另一個檔案自動生成的,那自動生成的檔案就沒必要放進版本庫,比如Java編譯產生的.class檔案;

  3. 忽略帶有敏感資訊的配置檔案,比如存放口令的配置檔案。

忽略檔案示例

比如,忽略Windows下自動生成的縮圖檔案,自定義目錄中的Desktop.ini檔案,windows自動生成的垃圾檔案。

# Windows:
Thumbs.db
ehthumbs.db
Desktop.ini

比如,忽略Python編譯產生的.pyc.pyodist等檔案或目錄

# Python:
*.py[cod]
*.so
*.egg
*.egg-info
dist
build

上面的檔案,加上自定義的檔案,就可以得到一個完整的gitignore檔案

# Windows:
Thumbs.db
ehthumbs.db
Desktop.ini # Python:
*.py[cod]
*.so
*.egg
*.egg-info
dist
build # My configurations:
db.ini
deploy_key_rsa
  • .gitignore檔案提交到Git。

檢驗.gitignore的標準是git status命令是不是說working directory clean

使用Windows的童鞋注意了,如果你在資源管理器裡新建一個.gitignore檔案,它會非常難以理解地提示你必須輸入檔名,但是在文字編輯器裡“儲存”或者“另存為”就可以把檔案儲存為.gitignore

此限制和問題,已經在Win10最新版中不存在了。其他版本和更具體的版本號未測試

.gitignore檔案檢視和強制新增

  • 當一個檔案被.gitignore忽略後,便不能新增到git暫存區
$ git add App.class
The following paths are ignored by one of your .gitignore files:
App.class
Use -f if you really want to add them.
  • 強制新增忽略的檔案

如Git提示,加上-f引數,可以強制新增檔案到Git

$ git add -f App.class
  • git check-ignore命令檢查忽略規則,從而修改規則
$ git check-ignore -v App.class
.gitignore:3:*.class App.class

Git提示.gitignore的第3行規則忽略了該檔案。