git 文件狀態與工作區域


在上一篇簡單講述了文件狀態與工作區域,在這里結合相關git命令詳細了解文件的狀態變更。

目錄

1. 介紹

2. 常用命令

3. 實際操作

 

1. 介紹

git的文件狀態是其git核心內容,了解后對后續的操作有莫大的幫助,不同的文件狀態又存儲在不同的工作區域中。

下面簡單的說明這兩者:

1.1 文件狀態

git中的文件有以下幾種狀態:

未跟蹤(untrack):表示文件為新增加的。

已修改(modified):表示修改了文件,但還沒保存到git倉庫中。

已暫存(staged):表示對一個已修改文件的當前版本做了標記,使之包含在下次提交的快照中。 

已提交(committed):表示文件已保存在git倉庫中。

 

1.2 工作區域

知道了文件狀態,也需要知道不同的文件狀態存儲在不同的工作區域內。

按照本地計算機與遠程計算機划分,工作區域有以下幾種:

1)本地計算機

Working Directory(工作目錄):即正在編輯的文件狀態。文件狀態為未跟蹤(untrack)和已修改(modified)在此區域內。

Staging Area(暫存區):保存了下次將提交的文件列表信息。文件狀態為已暫存(staged)在此區域內。

Repository(本地倉庫):提交到本地倉庫的文件。

2)遠程計算機

Repository(遠程倉庫):已提交到遠程計算機內的文件。

 

1.3 示例圖

 

2. 常用命令

git clone :將遠程倉庫clone到本地計算機。

git pull :拉取遠程倉庫的數據。

git status :展示工作區及暫存區域中不同狀態的文件。

git add :將內容從工作目錄添加到暫存區。

git commit :所有通過 git add 暫存的文件提交到本地倉庫。

git push :將本地倉庫的記錄提交到遠程倉庫。

git reset HEAD <file> :從暫存區移除指定文件。

git checkout -- <file> :從本地倉庫恢復指定文件。

 

3.實際操作

看完文件狀態分類和相關命令后,來一次實際操作。

3.1 初始狀態

git clone 一個倉庫后,運行 git status

 

3.2 添加一個文件

在此倉庫中添加一個文件a.txt,運行 git status

提示:可以看到文件上方有個 "Untracked files",表示這個文件【未跟蹤】。

 

3.3 新創建的文件添加到【暫存區】

執行 git add a.txt ,將會把新創建的a.txt提交到【暫存區】,執行后運行 git status

提示:文件上方有說明使用 git reset HEAD <file> 可從暫存區移除指定文件。

 

3.4 【暫存區】的內容提交到【本地倉庫】

執行 git commit ,將【暫存區】的內容提交到【本地操作】,執行后運行 git status

 

 

3.5 【本地倉庫】的內容提交到【遠程倉庫】

執行 git push,將【本地倉庫】的內容提交到【遠程倉庫】,執行后運行 git status

提示:可以看到提交后git狀態又回到初始化狀態。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM