從 Git 中的倉庫中刪除檔案
Azhar Bashir Khan
2021年12月25日
本教程將展示如何從 Git 倉庫中刪除檔案。
Git 支援協作開發環境。因此,一個開發團隊將許多檔案提交到 Git 倉庫中。
通常,我們會遇到一些不再需要或多餘的檔案。在這種情況下,我們認為刪除已經提交到倉庫中的此類檔案或資料夾是合適的。
我們現在將通過一個例子來說明這一點。
使用 git rm
刪除 Git 倉庫中的檔案和資料夾
假設我們在 Git 倉庫中有一個名為 folder1
的資料夾。另外,請考慮此資料夾有兩個檔案,file1
和 file2
。
$ ls folder1/
file1 file2
要刪除 Git 倉庫中的檔案,我們需要執行以下操作。
$ git rm <filename>
$ git commit -m "commit message"
$ git push origin branch_name
第一個命令從 Git 倉庫和檔案系統中刪除檔案。隨後的命令用於提交更改並將更改檔案刪除推送到遠端倉庫。
因此,要刪除 file1
,我們將在我們的示例中執行以下操作。
$ cd folder1
$ git rm file1
rm 'folder1/file1'
我們已經移動到 folder1
並從倉庫和檔案系統中刪除了 file1
。
我們可以檢查刪除的狀態如下。
$ git status
On branch main
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
deleted: file1
現在,我們將按如下方式提交此刪除操作。
$ git commit -m "deleted file"
[main 27ec53b] deleted file
1 file changed, 0 insertions(+), 0 deletions(-)
delete mode 100644 folder1/file1
$ git push origin main
有時,我們可能希望僅從倉庫而不是從檔案系統中刪除檔案。我們可能想將該檔案用於其他目的。
要僅從倉庫而不是從檔案系統中刪除檔案,我們需要執行以下操作。
$ git rm --cached file2
$ git commit -m "Removed file2 from repository only"
$ git push origin main
當我們使用 --cached
選項執行 git rm
命令時,檔案會從倉庫中刪除,但不會從工作樹(即)檔案系統中刪除。
有時,我們可能需要刪除整個資料夾。
為此,我們需要將選項 -r
新增到 git rm
命令,如下所示。
$ git rm -r folder1
rm 'folder1/file2'
$ git commit -m "removed folder1"
[main dabfe02] removed folder1
1 file changed, 0 insertions(+), 0 deletions(-)
delete mode 100644 folder1/file2
$ git push origin main
因此,在我們的示例中,我們現在刪除了資料夾,即 folder1
及其內容。
有關 git rm
的更多資訊,請瀏覽以下站點 - git rm
。