Git 環境配置
Git 自帶一個 git config 的工具來幫助設置控制 Git 外觀和行為的配置變量。 這些變量存儲在三個不同的位置:
/etc/gitconfig 文件: 包含系統上每一個用戶及他們倉庫的通用配置。 如果使用帶有 --system 選項的 git config 時,它會從此文件讀寫配置變量。
~/.gitconfig 或 ~/.config/git/config 文件:只針對當前用戶。 可以傳遞--global 選項讓 Git 讀寫此文件。
當前使用倉庫的 Git 目錄中的 config 文件(就是 .git/config):針對該倉庫。
每一個級別覆蓋上一級別的配置,所以
在 Windows 系統中,Git 會查找 $HOME 目錄下(一般情況下是 C:\Users\$USER)的 .gitconfig 文件。 Git 同樣也會尋找 /etc/gitconfig 文件,但只限於 MSys 的根目錄下,即安裝 Git 時所選的目標位置。
用戶信息
當安裝完 Git 應該做的第一件事就是設置用戶名稱與郵件地址。這樣做很重要,因為每一個 Git 的提交都會使用這些信息,並且它會寫入到每一次提交中,不可更改:
$ git config --global user.name "maxsu"
再次強調,如果使用了 --global 選項,那麽該命令只需要運行一次,因為之後無論你在該系統上做任何事情, Git 都會使用這些信息。 當你想針對特定項目使用不同的用戶名稱與郵件地址時,可以在那個項目目錄下運行不使用 --global 選項的命令來配置。
很多 GUI 工具都會在第一次運行時幫助你配置這些信息。
文本編輯器
既然用戶信息已經設置完畢,你可以配置默認文本編輯器了,當 Git 需要您輸入信息時會調用它。
如果未配置,Git 會使用操作系統默認的文本編輯器,通常是
$ git config --global core.editor Emacs
檢查配置信息
如果想要檢查你的配置,可以使用 git config --list 命令來列出所有 Git 當時能找到的配置:
$ git config --list
http.postbuffer=2M
user.name=maxsu
GIT-SSH 配置和使用
使用 SSH 協議來訪問 Git 倉庫,提供賬戶 SSH 公鑰和項目 SSH 公鑰設置。 用戶可以設置賬戶 SSH 公鑰,獲所有倉庫的讀寫權限,設置了 SSH 公鑰後,就不需要每次對 Git 倉庫的操作需要輸入用戶名和密碼。
生成密鑰
使用ssh-keygen 命令生成公/私鑰,默認全部回車,會在用戶目錄下創建 .ssh 目錄,生成的私鑰和公鑰文件存放在該目錄:
$ ssh-keygen -t rsa -C "[email protected]"
Generating public/private rsa key pair.
Enter file in which to save the key (C:\Users\Lixue-PC/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in C:\Users\Lixue-PC/.ssh/id_rsa.
Your public key has been saved in C:\Users\Lixue-PC/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:Dq2VcQgorI/63WpMpNkOv2IMow6aG4pfjdT/k+GdbAI [email protected]
The key‘s randomart image is:
+---[RSA 2048]----+
| . .. |
| o . . . |
| . . o . |
|. .. . + |
| o =. o S |
|+ =.oo *E . |
|=+ *o o oo = . |
|Bo+o=. .= = |
|B*oo+o. .+ |
+----[SHA256]-----+
設置 SSH 公鑰
使用的 Gitlab 作為 Git 的私鑰倉庫,首先登錄 Gitlab,點擊 Settings 找到 SSH Key,復制在上一步生成的公鑰文件(id_rsa.pub)內容填入到 Key 字段,點擊 Add Key 保存即可。
測試配置
使用命令 ssh 來測試 Gitlab 的公鑰配置,如下:
$ ssh -T [email protected]
The authenticity of host ‘192.168.160.33 (192.168.160.33)‘ can‘t be established.
ECDSA key fingerprint is SHA256:cjXiwka+JzJpLgWuHOlcEjNIm6BhsjMTVV6hX6GnB64.
Are you sure you want to continue connecting (yes/no)?
輸入 yes 繼續連接
Warning: Permanently added ‘192.168.160.33‘ (ECDSA) to the list of known hosts.
Welcome to GitLab, @lixue!
返回了 Welcome to GitLab 表示 SSH 的驗證的 Key 配置正確了,後續可以使用 SSH 來獲取項目
Git 環境配置