3、Git之常用命令

Javaer1995發表於2024-04-16

3.1、速查表

命令 作用
git config --global user.name 使用者名稱 設定使用者簽名(暱稱)
git config --global user.email 郵箱 設定使用者簽名(郵箱)
git init 初始化本地庫
git status 檢視本地庫狀態
git add 檔名 新增到暫存區
git commit -m "日誌資訊" 檔名 提交到本地庫
git reflog 檢視歷史記錄
git reset --hard 版本號 版本穿梭

3.2、使用者簽名

3.2.1、設定使用者簽名

image

隨便在一個地方右擊滑鼠,開啟 Git 的命令列介面。

image

git config --global user.name 使用者名稱
git config --global user.email 郵箱

簽名的作用是為了區分不同操作者的身份。

使用者的簽名資訊在每一個版本的提交資訊中能夠看到,以此確認本次提交是誰做的。

注意:Git 首次安裝必須設定使用者簽名,否則無法提交程式碼。

3.2.2、檢視使用者簽名

image

在 Windows 使用者目錄下的 .gitconfig 檔案中,可以檢視已設定的使用者簽名資訊

image

注意:這裡設定的使用者簽名,和將來登入 GitHub(或其他程式碼託管中心)的賬號沒有任何關係。

3.3、初始化本地庫

3.3.1、新建一個資料夾

image

資料夾名稱可以是任意的。

3.3.2、進入命令列介面

image

進入新建的資料夾,在空白處右擊,在該資料夾下開啟 Git 的命令列介面。

image

3.3.3、進行本地庫初始化

image

執行本地庫初始化命令後,該資料夾下會多了一個名稱是 .git 的子資料夾(預設是隱藏狀態),這就是剛建立的一個空的 Git 本地庫。

git init

3.3.4、檢視隱藏的本地庫

image

image

image

3.4、檢視本地庫狀態

3.4.1、檢視初始化狀態

image

git status

狀態資訊說明如下:

  • On branch master : 目前在 master (預設)分支上。

  • No commits yet :還沒提交過任何內容到本地庫。

  • nothing to commit : 現在沒有什麼可以提交到本地庫的,因為工作區沒有任何檔案。

3.4.2、新增檔案

image

在 .git 的父資料夾中(即工作區),新增一個檔案。

3.4.3、檢視新增檔案後的狀態

image

git status

狀態資訊說明如下:

  • Untracked files : 未被追蹤的檔案,本例為 hello.txt 。

  • nothing added to commit but untracked files present :除了未被追蹤的檔案,現在沒有什麼可以提交到本地庫的。

3.5、新增到暫存區

3.5.1、將工作區的檔案新增到暫存區

image

git add 未被追蹤的檔名

注意:只使用“git add”,不新增未被追蹤的檔名,會將所有未被追蹤的檔案都新增到暫存區。

3.5.2、檢視新增到暫存區後的狀態

image

git status

狀態資訊說明如下:

  • Changes to be committed :要提交的更改,本例為 hello.txt 這個新檔案。

注意:如果不想將暫存區中的內容提交到本地庫形成歷史版本,可以使用“git rm --cached 檔名”命令將暫存區追蹤的內容刪除(工作區的內容不受影響)。

3.6、提交到本地庫

3.6.1、將暫存區的檔案提交到本地庫

image

git commit -m "日誌資訊" 檔名

提示資訊說明如下:

  • [master (root-commit) 624e314] :一旦提交就會形成不能刪除的歷史版本,624e314 為本例提交到本地庫的(精簡)版本號。

  • 1 file changed, 1 insertion(+) :一個檔案有改變,插入了一行。

  • create mode 100644 hello.txt :100表示檔案型別為常規檔案,644表示具體的檔案許可權。

3.6.2、檢視提交到本地庫的狀態

image

git status

狀態資訊說明如下:

  • nothing to commit, working tree clean :工作區的內容和本地庫最新版本的內容一致,現在沒有什麼可以提交到本地庫的。

3.7、修改檔案

3.7.1、修改前的檔案內容

image

3.7.2、修改後的檔案內容

image

3.7.3、檢視修改檔案後的狀態

image

git status

狀態資訊說明如下:

  • Changes not staged for commit :未暫存提交的更改。

3.7.4、將工作區的檔案新增到暫存區

image

git add 未被追蹤的檔名

注意:只使用“git add”,不新增未被追蹤的檔名,會將所有未被追蹤的檔案都新增到暫存區。

3.7.5、檢視新增到暫存區後的狀態

image

3.7.6、將暫存區的檔案提交到本地庫

image

git commit -m "日誌資訊" 檔名

提示資訊說明如下:

  • 1 file changed, 1 insertion(+), 1 deletion(-) :一個檔案有改變,修改了一行(舊行刪除,新行插入)。

3.7.7、檢視提交到本地庫後的狀態

image

git status

3.8、刪除檔案

3.8.1、刪除檔案前

image

3.8.2、刪除檔案後

image

3.8.3、檢視刪除檔案後的狀態

image

git status

3.8.4、將工作區的檔案新增到暫存區

image

git add 未被追蹤的檔名

3.8.5、檢視新增到暫存區後的狀態

image

git status

3.8.6、將暫存區的檔案提交到本地庫

image

git commit -m "日誌資訊" 檔名

提示資訊說明如下:

  • 1 file changed, 1 deletion(-) :一個檔案有改變,刪除了一行(因為檔案內容只有一行)。

3.8.7、檢視提交到本地庫後的狀態

image

git status

3.9、歷史版本

注意:因為我不小心做了多次版本穿梭操作,所以為了更好的演示效果,我重做了上述的操作,因此下文的版本號和上文的會不一樣。

3.9.1、檢視歷史版本(精簡)

image

git reflog

3.9.2、檢視歷史版本(詳細)

image

git log

如圖所示,詳細的歷史版本資訊會展示完整的版本號和使用者簽名。

3.9.3、版本穿梭

image

git reset --hard 版本號

注意:版本號可以使用完整的,也可以使用精簡的(前提是精簡的版本號沒有重複)。

image

如圖所示,穿梭到第二次提交的版本後,被刪除的檔案在工作區恢復了,檔案內容和第二次提交時的一致。

3.9.4、檢視穿梭後的歷史版本

image

git reflog

相關文章