在 Git 中撤消 rm
在 Git 中,術語 rm 是 git remove
命令的別名。因此它用於從倉庫中刪除單個檔案或一堆檔案。Git 中 git rm
的主要功能是使用 Git 索引刪除跟蹤的檔案。
但是,git rm
也可用於從工作目錄和索引中刪除檔案。它從當前工作目錄及其在同一分支中的子目錄中刪除檔案。它不會刪除當前工作目錄之外的檔案。值得一提的是,git rm
命令不用於刪除倉庫中的分支。
在 Git 中刪除檔案
要從 Git 索引中刪除單個檔案,我們使用以下命令:
$ git rm <file>
同樣,要從 Git 中刪除一堆檔案,我們使用以下命令。
$ git rm <file> <file> <file> ...
如果我們希望從工作目錄中刪除檔案,我們使用以下命令:
$ git rm --cached <file>
git rm --cached
從工作目錄中刪除檔案時,它不會從 Git 索引中刪除它。
但是在這篇文章中,我們說明了如果我們不小心應用了這個命令該怎麼辦,現在我們想恢復它。下面提到的方法是還原更改的簡單方法。Git 有很多命令可以恢復它。我認為最好在以下部分涵蓋我們將使用最多的內容:
使用 Git checkout
命令恢復 rm
命令:
首先,我們將執行命令 git reset 將暫存區恢復為我們所做的更改。
git reset
應用 git reset
後,我們將執行 git checkout
以恢復同一倉庫中上次簽入時刪除的檔案或資料夾。
git checkout <file-name>
如果我們不想恢復暫存區域並檢查已刪除的檔案,我們可以通過提及 head 來輕鬆執行它,以達到預期的目標,如下所示:
git checkout HEAD <file-name>
使用 Git reset
命令恢復 rm
命令
如果我們沒有重要的未提交更改,那麼我們將使用 --hard
選項執行 git reset
,這會將所有內容重置為我們在分支中的最新提交:
git reset --hard HEAD
如果我們有未提交的更改,但第一個 git 命令不起作用,那麼我們將使用 git stash
儲存未提交的更改:
git stash
git reset --hard HEAD
git stash pop
Abdul is a software engineer with an architect background and a passion for full-stack web development with eight years of professional experience in analysis, design, development, implementation, performance tuning, and implementation of business applications.
LinkedIn