GIT撤銷修改總結

2021-09-03 01:43:24 字數 1636 閱讀 5832

目錄

git基礎知識

撤銷操作

主要名詞如下:

stage: 暫存區

master: 主分支

版本庫: git自動生成的.git資料夾

工作區:編寫和存放**的區域

head:指標,每個分支都有乙個head,並指向各自的分支節點

//本地的操作

add:**從工作區推送到暫存區。

commit:**從暫存區推送到主分支。

push:**從本地主分支推送到遠端分支。

本次使用的是乙個android專案來說明的,下面是版本庫和工作區。

從廖大神處拿來一張git的說明圖基本結構。

1  撤銷工作區的修改(未使用git add .指令)

讓指定檔案回到最近一次git commit或git add時的狀態,若--後不加任何東西,將撤銷工作區的所有更改。注意:新建的檔案此時對git而言是未知的,直接手動刪除即可。

git checkout -- //或者使用下面的指令來放棄所有的更改

git checkout .

2  撤銷暫存區的修改(已add但未commit時):分兩步: 第一步,把暫存區的修改撤銷掉(unstage),重新放回工作區;第二步,撤銷工作區的修改。若不指定檔案,則將撤銷所有的更改。

//1 先從commit狀態變成add後的狀態(也可通過git reset head . 指令來處理所有檔案)

git reset head //2 再從add後的狀態恢復到未進行更改時的狀態

git checkout --

3  撤銷本地倉庫的修改(已commit但未push時):分兩種情況: 情況一,退回到commit之前的那乙個版本;情況二,退回到指定(commitid)版本。注意:退回到任意版本時只需要寫commitid的前幾位即可。所謂的退回其實就是切換,就是git將指標直接切換到commitid處。

//情況一:退回到之前的那乙個版本

git reset --hard head^

//情況二:退回到任意版本,版本commitid為 a24s0...

git reset --hard a24s0

檢視commitid可通過如下指令:git log

----------------------------------------分----------------------割-----------------------線-------------------------------------

平時常用, 特此記錄,望勿忘。

git 修改 撤銷

git status 初始狀態是,什麼都沒有修改 on branch master nothing to commit working directory clean 修改了乙個檔案fu 狀態變成 root 172.18 4.100 gitlearn git status on branch mas...

Git撤銷修改

撤銷修改 加入在readme中加入了不想要的語言,在沒提交之前,使用 git status 檢視可以得到如下 遇到這種情況可以手動刪除,也可以使用 git checkout file命令丟棄工作區的修改。如圖,新的文件中取出了新增的部分。git checkout readme.txt會遇到兩種情況。...

git 撤銷修改

命令 git checkout file 命令git checkout readme.txt意思就是,把readme.txt檔案在工作區的修改全部撤銷,這裡有兩種情況 一種是readme.txt自修改後還沒有被放到暫存區,現在,撤銷修改就回到和版本庫一模一樣的狀態 一種是readme.txt已經新增...