-
1. 起步
-
2. Git 基礎
-
3. Git 分支
-
4. 伺服器上的 Git
- 4.1 協議
- 4.2 在伺服器上部署 Git
- 4.3 生成 SSH 公鑰
- 4.4 架設伺服器
- 4.5 Git Daemon
- 4.6 Smart HTTP
- 4.7 GitWeb
- 4.8 GitLab
- 4.9 第三方託管服務
- 4.10 小結
-
5. 分散式 Git
-
A1. 附錄 A: Git 在其他環境
- A1.1 圖形介面
- A1.2 Visual Studio 中的 Git
- A1.3 Visual Studio Code 中的 Git
- A1.4 IntelliJ / PyCharm / WebStorm / PhpStorm / RubyMine 中的 Git
- A1.5 Sublime Text 中的 Git
- A1.6 Bash 中的 Git
- A1.7 Zsh 中的 Git
- A1.8 PowerShell 中的 Git
- A1.9 小結
-
A2. 附錄 B: 在應用程式中嵌入 Git
-
A3. 附錄 C: Git 命令
1.6 開始 - 首次 Git 設定
首次 Git 設定
現在你的系統上已經安裝了 Git,你需要做一些事情來定製你的 Git 環境。你只需要在每臺電腦上做一次這些設定;它們會在版本升級後保留。你也可以隨時透過再次執行這些命令來更改它們。
Git 提供了一個名為 git config 的工具,可以讓你獲取和設定控制 Git 外觀和操作各個方面的配置變數。這些變數可以儲存在三個不同的位置
-
[path]/etc/gitconfig檔案:包含應用於系統上所有使用者及其所有倉庫的值。如果你向git config傳遞--system選項,它會專門從此檔案讀取和寫入。由於這是一個系統配置檔案,你需要管理員或超級使用者許可權才能對其進行更改。 -
~/.gitconfig或~/.config/git/config檔案:個人使用者特定的值。你可以透過傳遞--global選項來讓 Git 專門從此檔案讀取和寫入,這會影響你係統上所有倉庫的所有操作。 -
你當前使用的任何倉庫的 Git 目錄下的
config檔案(即.git/config):特定於該單個倉庫。你可以透過--local選項強制 Git 從此檔案讀取和寫入,但實際上這就是預設行為。不出所料,要使此選項正常工作,你需要位於 Git 倉庫的某個目錄下。
每個級別都會覆蓋前一個級別的設定,因此 .git/config 中的值會覆蓋 [path]/etc/gitconfig 中的值。
在 Windows 系統上,Git 會在 $HOME 目錄(對大多數人來說是 C:\Users\$USER)中查詢 .gitconfig 檔案。它也會繼續查詢 [path]/etc/gitconfig,儘管它是相對於 MSys 的根目錄,也就是你在 Windows 系統上執行安裝程式時選擇安裝 Git 的位置。如果你使用的是 Git for Windows 2.x 或更高版本,在 Windows XP 上系統級配置檔案位於 C:\Documents and Settings\All Users\Application Data\Git\config,在 Windows Vista 及更新版本上則位於 C:\ProgramData\Git\config。此配置檔案只能透過以管理員身份使用 git config -f <file> 進行更改。
你可以使用以下命令檢視所有設定及其來源
$ git config --list --show-origin
你的身份
安裝 Git 後,你應該做的第一件事是設定你的使用者名稱和電子郵件地址。這很重要,因為每次 Git 提交都會使用此資訊,並且這些資訊會不可更改地嵌入到你開始建立的提交中。
$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com
同樣,如果你傳遞 --global 選項,你只需要做一次,因為然後 Git 就會始終使用該系統上的使用者資訊。如果你想為特定專案覆蓋此設定,使用不同的名稱或電子郵件地址,可以在該專案目錄下執行不帶 --global 選項的命令。
許多 GUI 工具會在你首次執行時幫助你完成此操作。
你的編輯器
現在你的身份已經設定好,你可以配置 Git 在需要你輸入訊息時使用的預設文字編輯器。如果未配置,Git 會使用你的系統預設編輯器。
如果你想使用不同的文字編輯器,例如 Emacs,你可以這樣做
$ git config --global core.editor emacs
在 Windows 系統上,如果你想使用不同的文字編輯器,必須指定其可執行檔案的完整路徑。這可能因編輯器的打包方式而異。
對於 Notepad++,一個流行的程式設計編輯器,你可能想使用 32 位版本,因為在撰寫本文時,64 位版本不支援所有外掛。如果你使用的是 32 位 Windows 系統,或者在 64 位系統上使用 64 位編輯器,你會輸入類似這樣的內容
$ git config --global core.editor "'C:/Program Files/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"
|
注意
|
Vim、Emacs 和 Notepad++ 是在 Linux 和 macOS 等類 Unix 系統或 Windows 系統上開發者常用的流行文字編輯器。如果你使用的是其他編輯器,或 32 位版本,請在 git config core.editor 命令中查詢如何設定你最喜歡的編輯器與 Git 整合的具體說明。 |
|
警告
|
如果你沒有像這樣設定你的編輯器,你可能會在 Git 嘗試啟動它時遇到一個非常令人困惑的情況。在 Windows 系統上,一個例子可能是在 Git 發起的編輯過程中 Git 操作過早終止。 |
你的預設分支名稱
預設情況下,當你使用 git init 建立新倉庫時,Git 會建立一個名為 master 的分支。從 Git 版本 2.28 開始,你可以為初始分支設定不同的名稱。
要將 main 設定為預設分支名稱,請執行
$ git config --global init.defaultBranch main
檢查你的設定
如果你想檢查你的配置設定,可以使用 git config --list 命令列出 Git 在該點可以找到的所有設定
$ git config --list
user.name=John Doe
user.email=johndoe@example.com
color.status=auto
color.branch=auto
color.interactive=auto
color.diff=auto
...
你可能會看到鍵出現多次,因為 Git 會從不同的檔案(例如 [path]/etc/gitconfig 和 ~/.gitconfig)讀取相同的鍵。在這種情況下,Git 會使用它看到的每個唯一鍵的最後一個值。
你還可以透過輸入 git config <key> 來檢查 Git 如何看待特定鍵的值
$ git config user.name
John Doe
|
注意
|
由於 Git 可能會從多個檔案中讀取相同的配置變數值,因此你可能會得到一個意外的值,而不知道原因。在這種情況下,你可以詢問 Git 該值的來源,它會告訴你哪個配置檔案最終確定了該值
|