git 撤銷相關操作

2021-10-09 09:44:09 字數 1342 閱讀 1716

每次使用 git 需要進行版本回退相關的操作都要在搜尋引擎重新查詢相關命令,很是費時間,今天有空總結一下,算是記筆記方便以後使用。

git reset --hard
如果本地檔案修改得一團亂,但是還沒有 commit,可以通過這個命令恢復到上次 commit 的狀態。

git reset --hard commitid
將**恢復到指定的 commitid 處。如果不指定 --hard 引數,那麼不會改變工作區的檔案。(一般使用都會帶上該引數)

git revert head
commit **以後,你突然意識到這個 commit 有問題,應該撤銷掉,這時執行該命令就可以了。該命令會新生成乙個 commit 提交記錄,並不改變其他內容,在 log 中可檢視到撤銷記錄。基本屬於撤銷操作的首先方案。

該命令還有兩個常用引數

–no-commit:只抵消暫存區和工作區的檔案變化,不產生新的提交。

git reset head [filename]
可選引數

filename 指定撤銷的檔案。(不使用該引數表示所有已經 add 了的檔案全部取消 add 狀態)

git commit --amend -m "new message"
如果我們在 commit 之後發現資訊寫錯了,這是可以使用該命令修改資訊。

這時如果暫存區有發生變化的檔案(也就是有檔案被 add 了),會一起提交到倉庫。所以,–amend不僅可以修改提交資訊,還可以整個把上一次提交替換掉。

$ git stash

$ git stash pop

如果我們在修改了一些檔案後發現不應該在這個分支上操作,那麼我們可以使用 git stash 將當前工作區的檔案儲存一下,然後切換的新分支,執行 git stash pop 將儲存的內容恢復到新分支。

git reflog
只要head發生了變化, 就會在reflog裡面看得到。

配合 git reset 命令可以將**切換到任意狀態。

# 查詢 git 所有變化日誌

git reflog

# 本地倉庫回退到某一版本

git reset -hard ***x

# 強制 push,此時遠端分支已經恢復成指定的 commit 了

git push origin master --force

git 相關之撤銷操作

在使用git的時候,有時候會有失誤需要撤回的一些操作,可能主要包括以下 一 將檔案從暫存區撤回,使用命令 git reset head 1 撤銷現在暫存區的所有檔案 git reset head 2 撤銷暫存區的單個檔案 git reset head 檔名稱 二 撤銷對檔案的修改,使用命令 git ...

git撤銷操作

當改動還沒有被提交之前,它們仍然被稱之為 本地 改動。這些在你的工作目錄的修改還仍然在本地,它們屬於未被提交的改動。有時候你對 進行了一些修改,但是發現這些改動帶來的問題比之前還要多。在這種情況下,你可能想要放棄你剛剛的改動,讓 恢復到你改動之前的版本,也就是上次提交之後的狀態。恢復乙個檔案到上次提...

Git撤銷操作

在使用git的過程中,我們可能想要撤銷某些操作,在不同的階段撤銷的命令有所區別。撤銷暫存的檔案 當我們使用git add命令將檔案新增到暫存區域後,想要取消新增的檔案,操作的命令如下 git reset head 檔名 撤銷對檔案的修改 當我們對檔案進行修改後 還沒有提交到暫存區 不想保留對它的修改...