如何從 Git 倉庫中刪除已提交的檔案?
Git 允許您使用以下任何一種方法從倉庫中刪除檔案:
使用 Linux 的 rm 命令
使用 git rm 命令
場景 1 - 使用 Linux rm 命令
Linux rm 命令的語法如下:
$ git rm <file_name>
假設倉庫中存在一個名為“file1.python”的檔案。使用 Linux rm 命令刪除檔案“file1.python”。
$ git rm file1.python
首先,讓我們驗證檔案是否已從工作目錄中刪除。這可以透過使用 Linux ls 命令來驗證。
$ ls
輸出表明檔案已從工作目錄中刪除。
dell@DESKTOP−N961NR5 MINGW64 /e/tut_repo (master) $ Is
現在,讓我們驗證檔案是否也已從暫存區中刪除。
使用 git 命令 ls−files 來驗證。
$ git ls−files
上述程式碼的輸出為:
file1.python
從輸出中可以清楚地看到,該檔案尚未從暫存區中刪除。這意味著使用 Linux 命令執行的新增、重新命名或刪除檔案等更改不會自動暫存。此類更改應使用 git add 命令顯式暫存,然後提交。
$ git add file1.python
執行 ls−files 命令。操作的狀態也可以使用 git status 命令進行驗證。
$ git ls−files $ git status
上述命令的輸出顯示在螢幕截圖中。
On branch master Changes to be committed: (use “git restore --staged <file>...” to unstage) deleted:file1.python
該檔案已從暫存區中刪除。現在讓我們最終提交更改。
$ git commit -m ‘removed unused python file’
該檔案已永久從倉庫中刪除。請參閱下面的螢幕截圖以檢視輸出。
[master 81e32c4] removed unused python file 1 file changed, 2 deletions (-) delete mode 100644 file1.python
場景 2 - 使用 git rm 命令
git rm 命令的語法如下:
git rm <file_name>
假設倉庫中存在一個名為“file1.js”的檔案,讓我們使用 git rm 命令刪除該檔案。
$ git rm file1.js
讓我們使用 git ls−files 命令來驗證檔案是否已從暫存區中刪除。
$ git ls−files
我們也可以使用 git status 命令來驗證檔案是否已從暫存區中刪除。
$ git status
從輸出中可以清楚地看到,使用 git rm 命令刪除的檔案會從工作區和暫存區中刪除。請參閱下面的螢幕截圖以檢視輸出。
On branch master Changes to be committed: (use “git restore −−staged <file>...” to unstage) deleted:file1.js
現在讓我們提交更改並驗證輸出。
$ git commit −m ‘remove unused js file’
輸出表明該檔案已永久從倉庫中刪除。
[master dc7861e] removed unused js file 1 file changed, 1 deletion(−) delete mode 100644 file1.js
廣告