W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
本書講解了使用checkout, branch, remote
等共約 30 個(gè) Git 命令。然而由于 Git 一開始被設(shè)計(jì)成供 VCS 使用的工具集而不是一整套用戶友好的 VCS,它還包含了許多底層命令,這些命令用于以 UNIX 風(fēng)格使用或由腳本調(diào)用。這些命令一般被稱為 "plumbing" 命令(底層命令),其他的更友好的命令則被稱為 "porcelain" 命令(高層命令)。
本書前八章主要專門討論高層命令。本章將主要討論底層命令以理解 Git 的內(nèi)部工作機(jī)制、演示 Git 如何及為何要以這種方式工作。這些命令主要不是用來從命令行手工使用的,更多的是用來為其他工具和自定義腳本服務(wù)的。
當(dāng)你在一個(gè)新目錄或已有目錄內(nèi)執(zhí)行 git init
時(shí),Git
會(huì)創(chuàng)建一個(gè) .git 目錄,幾乎所有 Git 存儲(chǔ)和操作的內(nèi)容都位于該目錄下。如果你要備份或復(fù)制一個(gè)庫(kù),基本上將這一目錄拷貝至其他地方就可以了。本章基本上都討論該目錄下的內(nèi)容。該目錄結(jié)構(gòu)如下:
$ ls
HEAD
branches/
config
description
hooks/
index
info/
objects/
refs/
該目錄下有可能還有其他文件,但這是一個(gè)全新的git init
生成的庫(kù),所以默認(rèn)情況下這些就是你能看到的結(jié)構(gòu)。新版本的 Git 不再使用 branches 目錄,description
文件僅供 GitWeb
程序使用,所以不用關(guān)心這些內(nèi)容。config 文件包含了項(xiàng)目特有的配置選項(xiàng),info 目錄保存了一份不希望在 .gitignore 文件中管理的忽略模式 (ignored patterns) 的全局可執(zhí)行文件。hooks 目錄保存了第七章詳細(xì)介紹了的客戶端或服務(wù)端鉤子腳本。
另外還有四個(gè)重要的文件或目錄:HEAD
及 index
文件,objects
及 refs 目錄。這些是 Git 的核心部分。objects
目錄存儲(chǔ)所有數(shù)據(jù)內(nèi)容,refs
目錄存儲(chǔ)指向數(shù)據(jù) (分支) 的提交對(duì)象的指針,HEAD 文件指向當(dāng)前分支,index 文件保存了暫存區(qū)域信息。馬上你將詳細(xì)了解 Git 是如何操縱這些內(nèi)容的。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: