Git各種撤銷操作
撤銷git add操作
git reset HEAD <file> # 取消add操作並保留修改
git checkout -- <file> #若繼續該命令,則會刪除掉剛剛的修改內容
撤銷git commit操作
git reset --soft <commit_id> #可以回退到某個commit並儲存之前的修改 <commit_id>從git log中取,取前7位即可
git reset --hard <commit_id> #回退到某個commit不保留之前的修改
撤銷git push操作
push後撤銷該次commit
git revert <commit_id>
原理: git revert 會產生一個新的 commit,它和指定 SHA 對應的 commit 是相反的(或者說是反轉的)。 任何從原先的 commit 裡刪除的內容會在新的 commit 裡被加回去,任何在原先的 commit 里加入的內容會在新的 commit 裡被刪除。這是 Git 最安全、最基本的撤銷場景,因為它並不會改變歷史 — 所以你現在可以 git push 新的“反轉” commit 來抵消你錯誤提交的 commit。
push後刪除一些不該提交的檔案
刪除遠端分支上的檔案,同時也刪除了本地倉庫的檔案:
git rm file
git commit -m "test delete"
git push origin branch name
刪除遠端分支上的檔案,但同時保留本地倉庫的檔案
git rm --cached filename
git commit -m "delete"
git push origin branch name
刪除遠端分支上的資料夾,但同時保留本地倉庫的資料夾及檔案
git rm -r --cached directory
git commit -m "test"
git push origin branch name
相關文章
- git各種撤銷提交Git
- 【吐血整理】Git的各種撤銷姿勢Git
- 如何撤銷 Git 操作?Git
- git撤銷修改操作Git
- git 撤銷相關操作Git
- Git 系列教程(7)- 撤銷操作Git
- 撤銷操作 —— Git 學習筆記 12Git筆記
- Git 實用操作:撤銷 Commit 提交GitMIT
- git撤銷命令Git
- git進階(撤銷pull、撤銷merge、撤銷add)Git
- 如何在 Git 裡撤銷(幾乎)任何操作Git
- 如何高效撤銷Git管理的檔案在各種狀態下的更改Git
- Git命令(撤銷更改)Git
- Git中撤銷提交Git
- 撤銷git addGit
- 『現學現忘』Git基礎 — 23、Git中的撤銷操作Git
- 撤銷 git commit --amendGitMIT
- 撤銷rebase與git原理Git
- 撤銷 git commit –amendGitMIT
- 記錄一次誤刪操作,分享使用 Git 撤銷修改Git
- git 入門教程之撤銷更改Git
- Git 撤銷修改和版本回退Git
- 從撤銷 rebase 談談 git 原理Git
- git 中撤銷已commit 的GitMIT
- Git科普文,Git基本原理&各種騷操作Git
- 使用 Git 撤銷 Commit,但未 Git Push 的命令GitMIT
- git add 新增錯檔案 撤銷Git
- git各種操作:基本操作 and 多人協作 and 衝突解決Git
- Git commit 之後,想撤銷 commitGitMIT
- git撤銷某一次commit提交GitMIT
- Git study Day01 暫存區, 撤銷Git
- 網頁撤銷後ubuntu本地撤銷網頁Ubuntu
- 無廢話Git——本地伺服器提交撤銷Git伺服器
- Git如何撤銷某次分支的合併MergeGit
- Git 優雅的撤銷中間某次提交(包括 merge)Git
- git commit 錯誤的程式碼之後的撤銷GitMIT
- git如何撤銷已經提交到遠端的commit資訊GitMIT
- Word 2013 無法撤銷操作的錯誤薦