自定義Git
忽略特殊文件
在Git工作區的根目錄下創建一個特殊的.gitignore
文件,然後把要忽略的文件名填進去,Git就會自動忽略這些文件。
忽略文件的原則是:
- 忽略操作系統自動生成的文件,比如縮略圖等;
- 忽略編譯生成的中間文件、可執行文件等,也就是如果一個文件是通過另一個文件自動生成的,那自動生成的文件就沒必要放進版本庫,比如Java編譯產生的
.class
文件; - 忽略你自己的帶有敏感信息的配置文件,比如存放口令的配置文件。
下面的代碼是一個例子,內容如下:
# Windows: 系統生成的文件
Thumbs.db
ehthumbs.db # 以上兩個爲數據庫文件
Desktop.ini # 自定義目錄文件
# Python: # Python編譯生成的文件
*.py[cod]
*.so
*.egg
*.egg-info # 所有以上面四行爲後綴名的文件
dist
build # dist與build文件
# My configurations: # 用戶自身的配置文件
db.ini
deploy_key_rsa
然後就是把.gitignore
也提交到Git,就完成了!當然檢驗.gitignore
的標準是git status
命令是不是說working directory clean
。
若想強制添加一個被.gitignore
忽略的文件,可以使用-f
:
git add -f <文件名>
小結
- 忽略某些文件時,需要編寫
.gitignore
; .gitignore
文件本身要放到版本庫裏,並且可以對.gitignore
做版本管理!
配置別名
git config --global alias.<別名,如b> <原名,branch> # 用別名代替比較複雜的命令,此例用“b”代替“branch”
在撤銷修改一節中,命令git reset HEAD file
可以把暫存區的修改撤銷掉(unstage),重新放回工作區。既然是一個unstage
操作,就可以配置一個unstage
別名:
git config --global alias.unstage 'reset HEAD'
當輸入:
git unstage test.py
實際上執行的是:
git reset HEAD test.py
配置一個git last
,讓其顯示最後一次提交信息:
git config --global alias.last 'log -1'
這樣,用git last就能顯示最近一次的提交。輸入如下:
git last
輸出如下:
Author: XueToWei <[email protected]>
Date: Mon Jul 22 15:26:19 2019 +0800
add the first file to gitee
配置文件
配置Git的時候,加上--global
是針對當前用戶起作用的,如果不加,那隻針對當前的倉庫起作用。每個倉庫的Git配置文件都放在.git/config
文件中。輸入如下:
cat .git/config
輸出:
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
[remote "origin"]
url = [email protected]:XueToWei/.git
fetch = +refs/heads/*:refs/remotes/origin/*
別名就在[alias]後面,要刪除別名,直接把對應的行刪掉即可。當前用戶的Git配置文件放在用戶主目錄下的一個隱藏文件.gitconfig
中。配置別名也可以直接修改這個文件,如果改錯了,可以刪掉文件重新通過命令配置。