我在 Linux 中使用的五個(gè) Git 配置

在 Linux 中設(shè)置 Git 十分簡(jiǎn)單,但為了獲得完美的配置,我做了以下五件事:
- 創(chuàng)建全局配置
- 設(shè)置默認(rèn)名稱
- 設(shè)置默認(rèn)郵箱地址
- 設(shè)置默認(rèn)分支名稱
- 設(shè)置默認(rèn)編輯器
我使用 Git 管理我的代碼、命令行腳本以及文檔版本。這意味著每次我開始一項(xiàng)新的任務(wù),首先我需要?jiǎng)?chuàng)建一個(gè)文件目錄并將其添加到 Git 庫(kù)中:
$ mkdir newproject
$ cd newproject
$ git init
有一些我一直想要的常規(guī)設(shè)置。不多,但可以避免我每次都進(jìn)行配置。我喜歡利用 Git 的 全局 配置功能。
Git 提供了進(jìn)行手動(dòng)配置的 ??git config?? 命令,但這有一些注意事項(xiàng)。例如,通常你會(huì)設(shè)置郵箱地址。你可以通過運(yùn)行 ??git config user.email 你的郵件地址?? 命令進(jìn)行設(shè)置。然而,這只會(huì)在你當(dāng)前所在的 Git 目錄下起作用。
$ git config user.email alan@opensource.com
fatal: not in a git directory
此外,當(dāng)這個(gè)命令在 Git 倉(cāng)庫(kù)中運(yùn)行時(shí),它只會(huì)配置特定的一個(gè)倉(cāng)庫(kù)。在新的倉(cāng)庫(kù)中,你不得不重復(fù)這個(gè)步驟。我可以通過全局配置來避免重復(fù)。選項(xiàng) ??--global?? 會(huì)指示 Git 將郵箱地址寫入全局配置 ??~/.gitconfig?? 文件中,甚至在必要時(shí)會(huì)創(chuàng)建它:
請(qǐng)記住,波浪線(?
?~??)代表你的主文件夾。在我的電腦中它是 ??/home/alan??。
$ git config --global user.email alan@opensource.com
$ cat ~/.gitconfig
[user]
email = alan@opensource.com
這里的缺點(diǎn)是,如果你有大量偏好設(shè)置,需要輸入很多命令,這將花費(fèi)大量時(shí)間并且很容易出錯(cuò)。Git 提供了更加快捷有效的方式,可以直接編輯你的全局配置文件——這是我列表中的第一項(xiàng)!
1、創(chuàng)建全局配置
如果你剛開始使用 Git,或許你還沒有該文件。不用擔(dān)心,讓我們直接開始。只需要用 ??--edit?? 選項(xiàng):
$ git config --global --edit
如果沒有該文件,Git 將會(huì)創(chuàng)建一個(gè)包含以下內(nèi)容的新文件,并使用你終端的默認(rèn)編輯器打開它:
# This is Git's per-user configuration file.
[user]
# Please adapt and uncomment the following lines:
# name = Alan
# email = alan@hopper
~
~
~
"~/.gitconfig" 5L, 155B 1,1 All
現(xiàn)在我們已經(jīng)打開了編輯器,并且 Git 已經(jīng)在后臺(tái)創(chuàng)建了全局配置文件,我們可以繼續(xù)接下來的設(shè)置。
2、設(shè)置默認(rèn)名稱
名字是該文件中的首要條目,讓我們先從它開始。用命令行設(shè)置我的名稱是 ??git config --global user.name "Alan Formy-Duval"??。不用在命令行中運(yùn)行該命令,只需要在配置文件中編輯 ??name?? 條目就行:
name = Alan Formy-Duval
3、設(shè)置默認(rèn)郵箱地址
郵箱地址是第二個(gè)條目,讓我們添加它。默認(rèn)情況下,Git 使用你的系統(tǒng)提供的名稱和郵箱地址。如果不正確或者你想要更改,你可以在配置文件中具體說明。事實(shí)上,如果你沒有配置這些,Git 在你第一次提交時(shí)會(huì)友好的提示你:
Committer: Alan <alan@hopper>
Your name and email address were configured automatically based
on your username and hostname. Please check that they are accurate....
在命令行中運(yùn)行 ??git config --global user.email "alan@opensource.com"?? 會(huì)設(shè)置好我的郵箱。同樣,我們?cè)谂渲梦募芯庉?nbsp;??email?? 條目,提供你的郵箱地址:
email = alan@opensource.com
我喜歡設(shè)置的最后兩個(gè)設(shè)置是默認(rèn)分支名稱和默認(rèn)編輯器。當(dāng)你仍在編輯器中時(shí),需要添加這些指令。
4、設(shè)置默認(rèn)分支名稱
目前有一種趨勢(shì),即不再使用 ??master?? 作為默認(rèn)分支名稱。事實(shí)上,在新存儲(chǔ)庫(kù)初始化時(shí),Git 將通過友好的消息提示更改默認(rèn)分支名稱:
$ git init
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
這個(gè)名為 ??defaultBranch?? 的指令需要位于一個(gè)名為 ??init?? 的新部分中?,F(xiàn)在普遍接受的是,許多程序員使用 ??main?? 這個(gè)詞作為他們的默認(rèn)分支。這是我喜歡使用的。將此部分后跟指令添加到配置中:
[init]
defaultBranch = main
5、設(shè)置默認(rèn)編輯器
第五個(gè)設(shè)置是設(shè)置默認(rèn)的編輯器。這是指 Git 將使用的編輯器,用于在你每次將更改提交到存儲(chǔ)庫(kù)時(shí)輸入你的提交消息。不論是 ??nano??、??emacs??、??vi?? 還是其他編輯器,每個(gè)人都有他喜歡的。我喜歡用 vi。添加 ??core?? 部分,并設(shè)置 ??editor?? 指令為你喜歡的編輯器。
[core]
editor = vi
這是最后一項(xiàng)。退出編輯器。Git 在主目錄下保存全局配置文件。如果你再次運(yùn)行編輯命令,將會(huì)看到所有內(nèi)容。注意配置文件是明文存儲(chǔ)的文本文件,因此它可以很容易使用文本工具查看,如 ??cat?? 命令。這是我的配置文件內(nèi)容:
$ cat ~/.gitconfig
[user]
email = alan@opensource.com
name = Alan Formy-Duval
[core]
editor = vi
[init]
defaultBranch = main
這是一個(gè)簡(jiǎn)單的指南,可以讓你快速開始使用 Git 和它的一些配置選項(xiàng)。




























