Git學習筆記之Git的基本操作(四)

2021-09-23 05:52:00 字數 1941 閱讀 7858

工作區(working directory)

就是你在電腦裡能看到的目錄

版本庫(repository)

工作區有乙個隱藏目錄.git,這個不算工作區,而是git的版本庫。

git的版本庫里存了很多東西,其中最重要的就是稱為stage(或者叫index)的暫存區,還有git為我們自動建立的第乙個分支master,以及指向master的乙個指標叫head。

把檔案往git版本庫里新增的時候,是分兩步執行的:

第一步是用git add把檔案新增進去,實際上就是把檔案修改新增到暫存區;

第二步是用git commit提交更改,實際上就是把暫存區的所有內容提交到當前分支。

因為我們建立git版本庫時,git自動為我們建立了唯一乙個master分支,所以,現在,git commit就是往master分支上提交更改。

$ git status
檢視工作區、暫存區狀態

執行 git diff 來檢視執行 git status 的結果的詳細資訊

$ git diff
$ git log
git log可以檢視提交歷史,以便確定要回退到哪個版本

git reflog檢視命令歷史,以便確定要回到未來的哪個版本

如果嫌輸出資訊太多,可以試試加上--pretty=oneline引數:git log --pretty=oneline 或 git log --oneline

多屏顯示控制方式:空格向下翻頁    b 向上翻頁    q 退出

$ git reset --hard
在git中,用head表示當前版本,上乙個版本就是head^,上上乙個版本就是head^^,往上100個版本可以寫成head~100

git reset head可以把暫存區的修改撤銷掉(unstage),重新放回工作區

reset命令的三個引數

--soft 引數 僅在本地庫移動指標

--mixed 引數 在本地庫移動指標 重置暫存區

--hard 引數 在本地庫移動指標 重置暫存區 重置工作區

$ git checkout -- file
命令git checkout -- file意思就是,把file檔案在工作區的修改全部撤銷,這裡有兩種情況:

一種是file自修改後還沒有被放到暫存區,現在,撤銷修改就回到和版本庫一模一樣的狀態;

一種是file已經新增到暫存區後,又作了修改,現在,撤銷修改就回到新增到暫存區後的狀態。

總之,就是讓這個檔案回到最近一次git commitgit add時的狀態。

--很重要,沒有--,就變成了「切換到另乙個分支」的命令

$ git rm
命令git rm用於刪除乙個檔案。如果乙個檔案已經被提交到版本庫,那麼你永遠不用擔心誤刪,但是要小心,你只能恢復檔案到最新版本,你會丟失最近一次提交後你修改的內容

申明:本文只是學習過程中的乙個筆記。絕大部分內容**於網路。主要有:廖雪峰的官方**、菜鳥教程、尚矽谷官網,在此特別感謝。**引用,請註明出處。尊重別人的勞動成果是一種美德。

git學習筆記 實操

git版本回退 git log 該命令顯示從最近到最遠的提交日誌。每一次提交都有對應的 commit id 和 commit message git log pretty oneline 只顯示commit id 和commit message git config global user.name...

git學習筆記 git入門 git基本用法

git可以有效的處理專案版本管理,掌握git是很重要的,以下是我在學習的過程和一些體會 使用mkdir建立乙個專案目錄 進入目錄,建立git倉庫 輸出如上所示,使用 ls al 命令可以看到乙個名為 git 的目錄在該目錄下建立,這就表示乙個倉庫成功被初始化了 可以使用touch命令建立檔案,用vi...

Git學習筆記之Git的簡介(一)

git 是乙個開源的分布式版本控制系統,用於敏捷高效地處理任何或小或大的專案。git 是 linus torvalds 為了幫助管理 linux 核心開發而開發的乙個開放原始碼的版本控制軟體。git 與常用的版本控制工具 cvs,subversion 等不同,它採用了分布式版本庫的方式,不必伺服器端...