備注:
本文參考于廖雪峰老師的博客Git教程。依照其博客進(jìn)行學(xué)習(xí)和記錄,感謝其無私分享,也歡迎各位查看原文。
知識(shí)點(diǎn)
配置Git顯示顏色
git config --global color.ui true.gitignore配置忽略文件,且要提交到版本庫git add -f <file>,強(qiáng)制添加file,git check-ignore檢查忽略規(guī)則
自定義Git
在安裝Git時(shí),有對(duì)Git進(jìn)行全局配置,用戶名和郵箱(user.name和user.email)
也可以配置其他選項(xiàng)
- 配置Git顯示顏色
$ git config --global color.ui true
忽略特殊文件
實(shí)際開發(fā)中,總有一些特殊文件不能提交。比如保存了數(shù)據(jù)庫密碼的配置文件等。
但是這些文件創(chuàng)建后,在git status時(shí)會(huì)顯示Untracked files ...,而且不小心添加上后就會(huì)被提交。
.gitignore忽略文件
Git中,可以在Git工作區(qū)的根目錄下,創(chuàng)建一個(gè).gitignore文件,寫上需要忽略的文件名,Git就會(huì)自動(dòng)忽略這些文件。
關(guān)于不同語言和環(huán)境中推薦的忽略文件的配置,可以查看github項(xiàng)目gitignore:https://github.com/github/gitignore 中示例。
忽略文件的原則是:
忽略操作系統(tǒng)自動(dòng)生成的文件,比如縮略圖等;
忽略編譯生成的中間文件、可執(zhí)行文件等,也就是如果一個(gè)文件是通過另一個(gè)文件自動(dòng)生成的,那自動(dòng)生成的文件就沒必要放進(jìn)版本庫,比如
Java編譯產(chǎn)生的.class文件;忽略帶有敏感信息的配置文件,比如存放口令的配置文件。
忽略文件示例
比如,忽略Windows下自動(dòng)生成的縮略圖文件,自定義目錄中的Desktop.ini文件,windows自動(dòng)生成的垃圾文件。
# Windows:
Thumbs.db
ehthumbs.db
Desktop.ini
比如,忽略Python編譯產(chǎn)生的.pyc、.pyo、dist等文件或目錄
# Python:
*.py[cod]
*.so
*.egg
*.egg-info
dist
build
上面的文件,加上自定義的文件,就可以得到一個(gè)完整的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。
檢驗(yàn)
.gitignore的標(biāo)準(zhǔn)是git status命令是不是說working directory clean
使用Windows的童鞋注意了,如果你在資源管理器里新建一個(gè)
.gitignore文件,它會(huì)非常難以理解地提示你必須輸入文件名,但是在文本編輯器里“保存”或者“另存為”就可以把文件保存為.gitignore。此限制和問題,已經(jīng)在Win10最新版中不存在了。其他版本和更具體的版本號(hào)未測試
.gitignore文件查看和強(qiáng)制添加
- 當(dāng)一個(gè)文件被
.gitignore忽略后,便不能添加到git暫存區(qū)
$ 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.
- 強(qiáng)制添加忽略的文件
如Git提示,加上-f參數(shù),可以強(qiáng)制添加文件到Git
$ git add -f App.class
-
git check-ignore命令檢查忽略規(guī)則,從而修改規(guī)則
$ git check-ignore -v App.class
.gitignore:3:*.class App.class
Git提示.gitignore的第3行規(guī)則忽略了該文件。