在 Git 中取消快取檔案
在 Git 中,我們新增檔案以跟蹤特定分支的位置稱為快取區
或索引區
。這是一種組織檔案併為提交做好準備的獨特方式。
但有時,我們想從快取區撤回檔案。這個過程稱為 unstaging
。如果我們不小心將任何檔案新增到 Git,我們可以通過從分支執行 unstaging
過程將其從索引中撤消。
Git 為我們提供了各種命令來處理這種情況並解決這個關鍵問題以達到結果。本文將展示如何使用兩個重要命令在 Git 中取消快取檔案。
在 Git 中如何取消快取檔案
在 Git
中,我們可以使用兩種不同的方式取消快取檔案。下面詳細解釋這兩種方式:
git rm -cached <file-name>
git reset Head <file-name>
使用 git rm
命令取消快取檔案
命令 git rm --cached
幫助我們從快取區刪除檔案。當檔案已經存在於 repo 中時,命令 git rm --cached
將幫助我們從索引中刪除所需的檔案。
這會將其保留在工作目錄中,並且現在會將其從倉庫中永久刪除。
git rm --cached <filePath>
此命令不會取消快取檔案,它只會快取從之前已經提交的 repo 中刪除檔案,並將檔案留在我們的工作樹中的分支中未跟蹤。
使用 git reset
命令取消快取檔案
Git Reset 用於重置工作目錄中所做的更改。我們可以通過它重置我們的倉庫、快取區和我們的工作目錄。
從快取區域中刪除檔案的最簡單方法是執行以下命令,通過指定我們要使用以下命令取消快取該檔案的檔案路徑。
git reset <commit> -- <path>
如果我們不指定檔案,它將自動引用當前簽出分支中的 HEAD
。
如果我們沒有用 git reset
指定檔名,那麼所有的提交都將被取消快取,快取區在我們當前的簽出分支中將是空的,之後將不會恢復。
因此,當你滿意並確認刪除或清空快取區時,必須備份這些檔案或執行這些命令。
$ git reset
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