Git的自定義和特殊文件配置

備註:

本文參考於廖雪峯老師的博客Git教程。依照其博客進行學習和記錄,感謝其無私分享,也歡迎各位查看原文。git

知識點

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

  • .gitignore配置忽略文件,且要提交到版本庫web

  • git add -f <file>,強制添加filegit check-ignore檢查忽略規則數據庫

自定義Git

在安裝Git時,有對Git進行全局配置,用戶名和郵箱(user.nameuser.email) 也能夠配置其餘選項windows

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

忽略特殊文件

實際開發中,總有一些特殊文件不能提交。好比保存了數據庫密碼的配置文件等。編輯器

可是這些文件建立後,在git status時會顯示Untracked files ...,並且不當心添加上後就會被提交。學習

.gitignore忽略文件

Git中,能夠在Git工做區的根目錄下,建立一個.gitignore文件,寫上須要忽略的文件名,Git就會自動忽略這些文件。測試

關於不一樣語言和環境中推薦的忽略文件的配置,能夠查看github項目gitignore:https://github.com/github/gitignore 中示例。ui

忽略文件的原則是:

  1. 忽略操做系統自動生成的文件,好比縮略圖等;url

  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行規則忽略了該文件。

本文使用 mdnice 排版

相關文章
相關標籤/搜索