GIT使用 一些概念

2022-08-02 15:39:10 字數 1749 閱讀 3326

(1)git版本庫(repository)

乙個簡單的資料庫,包括所有用來維護與管理專案的修訂版本和歷史的資訊。

git維護兩個主要的資料結構:

(2)git物件型別

1、塊(blob)

檔案的每乙個版本表示為乙個塊

2、目錄樹(tree)

代表一層目錄資訊

3、提交(commit)

儲存版本庫中每一次變化的元資料,包括作者、提交者、提交日期和日誌訊息

4、標籤(tag)

分配乙個任意的可讀名字給乙個特定物件,通常是提交物件

(3)索引

是乙個臨時的、動態的二進位制檔案,描述整個版本庫的目錄結構。

索引捕獲專案在某個時刻的整體結構的乙個版本。

工作原理:

作為開發者,通過執行git命令在索引中暫存變更,索引會記錄和儲存這些變更,保障它們的安全直到開發者準備提交。

(4)可定址內容名稱

git物件庫被組織及實現成乙個內容定址的儲存系統。每個物件都有乙個唯一的名稱,如:0a3071601cc10777e271a952ead46cffba233e24

(5)git追蹤內容

1、當git放置乙個檔案到物件庫中時,它基於資料的雜湊值而不是檔名,即便兩個檔案內容一樣,無論是否在相同的目錄,git只儲存乙份塊形式的內容副本。

2、當檔案從乙個版本變到下乙個版本時,git的內部資料庫有效地儲存每個檔案的每個版本,而不是它們的差異。

(6)打包檔案

建立乙個打包檔案,git首先定位內容非常相似的全部檔案,然後為它們之一儲存整個內容,之後計算相似檔案之間的差異並只儲存差異。

(7)物件庫圖示

(8)git中的檔案分類

(9)git commit的一些注意事項

git commit --all

-a 或 --all 會導致執行提交之前自動暫存所有未暫存和未追蹤的檔案變化,包括從工作副本中刪除已追蹤的檔案。

(10)其他使用技巧

檢視版本庫檔案資訊

[root@localhost public_html]# git ls-files --stage

100644 8638631b774c05291d21eb5541aa546d2bd6cf85 0 foo.html

100644 8638631b774c05291d21eb5541aa546d2bd6cf85 0 index.html

將乙個檔案由已暫存轉化為未暫存

[root@localhost public_html]# git rm --cached index.html
強制刪除檔案

[root@localhost public_html]# git rm -f index.html
恢復檔案的舊版本

[root@localhost public_html]# git checkout head -- index.html
取消已快取的內容

[root@localhost public_html]# git reset head -- hello.php

git 一些使用技巧

場景1 當你改亂了工作區某個檔案的內容,想直接丟棄工作區的修改時,用命令git checkout file。場景2 當你不但改亂了工作區某個檔案的內容,還新增到了暫存區時,想丟棄修改,分兩步,第一步用命令git reset head file,就回到了場景1,第二步按場景1操作。head指向的版本就...

有關Git的一些使用

1 git官網介紹 2 總結一些常用的git命令 說明操作 分支建立 git branch develop 分支切換 git checkout develop 分支建立並切換 git checkout b develop 建立遠端分支 git push origin develop 檢視每一分支的最...

git的一些基本使用

工作中對於專案的管理主要是基於git的,學習git還是很重要的。git的特點 git相關引數的配置 用來指定自己的機器 git config global user.name your name git config global user.email your email git倉庫的建立 mkd...