上一篇介紹了版本控制系統相關知識,本篇主題是如何安裝和配置Git。
使用
使用方式主要分為兩種:
- 原始命令行方式(使用命令行工具)
- 圖形界面方式(使用客戶端)
目前有很多客戶端工具可以使用如,但是大多數都只支持一些基本的操作,
為了更全面的學習和深入理解Git,我們主要介紹命令行方式,這才是合理打開Git方式。
安裝
Linux
sudo yum install git-all
or for Ubuntu
sudo apt-get install git-all
Mac
Mac下可以有以下兩種方式安裝:
- 安裝Xcode命令行工具
- 下載安裝包
Windows
Windows下安裝方式主要有以下兩種:
另外,還可以通過源碼方式安裝,但是比較麻煩,且對于學習和使用Git并無多大幫助,所以不做介紹,有興趣可以搜索了解。
配置
當你看到這里時,我相信你的筆記本已經安裝好了Git,直接進入本節主題:Git的自定義配置。
Git支持我們設置配置變量來對Git的外觀和操作等諸多方面進行配置,而且配置會持久保存,你也可以隨時更改配置。
git config
Git提供git config工具支持我們獲取或設置Git配置變量,這些配置變量保存在三個不同地方:
/etc/gitconfig文件
該文件包含系統上的每一個用戶及其所有項目倉庫的配置變量;
使用git config --system時,讀寫的是此文件中的配置變量。
~/.gitconfig 或 ~/.config/git/config文件
特定用戶的全局配置變量文件;
使用git config --global時,讀寫此文件中配置變量;
在Windows系統上,該文件在Git安裝時指定的安裝目錄下,默認是在系統環境變量$HOME目錄下,如C:\Users$USER
-
.git/config文件
- 特定項目倉庫的配置文件
- 存放在當前用戶的Git目錄中,Git目錄在上一節中講到。
以上三層配置優先級由低到高,即當前項目的配置優先于其他配置。
查看配置
我們可以查看Git當前配置列表,輸入如下指令:
git config --list
如圖:
當然,也可以查看知道配置項,如查看用戶名稱:
git config user.name
配置項
所有的配置都有兩種方式設置,可自由選擇:
- 直接修改上文提到的配置文件;
- 通過命令行進行設置
以下所有操作均通過命令行設置。
用戶信息配置
在使用Git前我們應該配置一下用戶名和郵箱:
git config --global user.name "驚鴻"
git config --global user.email "jinghong@example.com"
這里使用了--global參數,是針對此計算機上用戶的全局配置,如果我們希望在不同項目使用不同身份信息,則直接在該項目下配置:
git config user.name "jh"
git config user.email jh@example.com
配置別名
有時候我們也許會覺得重復輸入一些長指令,比較費勁,Git支持我們為其設置別名,需要使用alias指令,如:
git config --global alias.co checkout
如上配置,是將Git的檢出指令(checkout)命名別名為co,配置后,如下兩個指令是等效的:
git co xxx
git checkout xxx
當然,我們不只是能對單個指令指定別名,還可以為復合指令指定別名,如:
git config alias.acm '!'"git add . && git commit"
配置后git acm等效于如下兩條指令:
git add .
git commit
編輯器
我們也可以指定我們在Git編輯文本時使用的默認編輯器,如果不指定,則會使用系統的默認文本編輯器。
比如配置為notepad++,只需如下配置:
git config --global core.editor "'C:/Program Files (x86)/Notepad++/notepad++.exe' -multiInst -nosession"
注意:需包圍應用程序路徑的單引號,以及windows默認的路徑分隔符 \有轉義的含義,所以要改成 / 。
當然,我推薦你使用vim編輯,這樣不需要考慮跨平臺使用:
git config --global core.editor vim
如上文所述,你還可以通過文件直接設置,如打開.git/config文件,在core中添加 editor=vim,查看.git/config文件:
幫助
可以使用Git幫助工具,查看某指令信息:
git help <verb>
or
git <verb> --help
or
man git-<verb>
本篇介紹了不同環境下Git的安裝及安裝后的Git自定義配置,下一篇將會介紹Git的基礎工作理論,敬請關注。