.git 目錄解釋
John Wachira
2022年4月22日
在本文中,我們將介紹 Git 資料夾 .git
。我們將介紹 Git 建立資料夾的原因及其包含的內容。
Git 中的 .git
資料夾是什麼
Git 是一個廣泛使用的版本控制系統。Git 倉庫儲存你在專案中所做的更改。
.git
目錄將所有資料儲存在你的倉庫中。此資料夾可以儲存從有關提交的資訊到倉庫電子郵件地址的任何內容。
你還將找到一個包含你的提交歷史記錄的日誌。使用此日誌,你可以恢復所需的程式碼版本。
當你執行 git init
命令來初始化一個空倉庫時,Git 會建立 .git
資料夾。
你可以通過執行以下命令來檢視該資料夾。
ls -C .git
你可以期待如下所示的輸出。
$ ls -C .git
COMMIT_EDITMSG HEAD config hooks/ info/ objects/ refs/
FETCH_HEAD ORIG_HEAD description index logs/ packed-refs
讓我們進一步探索這個目錄的內容。
hooks/
-hooks
資料夾儲存指令碼檔案。當你執行諸如push
和commit
之類的命令時,Git 會執行這些指令碼檔案。objects/
- 此資料夾包含 Git 的物件資料庫。config
- 這是 Git 的配置檔案。refs/
- 此資料夾包含有關分支和標籤的資料。HEAD
- 此檔案儲存有關你的主分支的資訊。index
- 此二進位制檔案包含暫存資料。
你可以通過執行以下命令檢視物件資料庫包含的內容。
ls -C .git/objects
你應該得到如下所示的輸出。
$ ls -C .git/objects
03/ 24/ 30/ 77/ 87/ ac/ b6/ c6/ e1/ ec/ info/
19/ 29/ 4b/ 78/ 8b/ b1/ c3/ d4/ e6/ f6/ pack/
1f/ 2d/ 67/ 7b/ a6/ b2/ c4/ dd/ e9/ fa/
你可以使用 ls -C .git/objects/<dir>
命令查詢資料庫的物件。
讓我們探索 config
檔案。執行 cat .git/config
命令,如下所示。
pc@JOHN MINGW64 ~/Git (main)
$ cat .git/config
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
[gui]
wmstate = normal
geometry = 893x435+208+208 175 196
[remote "origin"]
url = https://github.com/Wachira11ke/Delftscopetech.git
fetch = +refs/heads/*:refs/remotes/origin/*
HEAD
檔案預設引用你的主分支。
.git
資料夾始終隱藏以防止損壞。如果刪除該檔案,則無法恢復倉庫中的更改。
作者: John Wachira
John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.
LinkedIn