首頁 >開發工具 >Git >git如何忽略文件

git如何忽略文件

PHPz
PHPz原創
2023-04-04 10:44:449560瀏覽

在專案中,我們可能會遇到一些不需要被 Git 追蹤的文件,例如編譯產生的二進位檔案、日誌檔案以及臨時檔案等。此時,Git 提供了一種忽略文件的方法,可以忽略這些文件,不對其進行版本管理。

在 Git 中,忽略文件採用的是 .gitignore 文件,可以告訴 Git 忽略哪些文件或目錄不會被追蹤到版本歷史中。在這篇文章中,我們將介紹 Git 如何忽略文件。

一、建立 .gitignore 檔案

建立 .gitignore 檔案很簡單,只需要在專案根目錄中建立一個名字為 .gitignore 的檔案即可。需要注意的是,.gitignore 檔案的內容必須依照 Git 的規則進行設定。下面是一個 .gitignore 檔案的範例:

# 忽略所有 .a 文件
*.a

# 但是 lib.a 文件除外
!lib.a

# 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
/TODO

# 忽略 build/ 目录下的所有文件
build/

# 忽略 doc/notes.txt 文件,但不包括 doc/server/arch.txt 文件
doc/*.txt

# 忽略所有 .pdf 文件在 doc/ 目录下以及子目录下
doc/**/*.pdf

在上述範例中,我們可以看到多種設定忽略檔案的方式。其中,第一行的 *.a 表示忽略所有的 .a 文件,!lib.a 表示不忽略 lib.a 文件。 /TODO 表示忽略專案根目錄下的 TODO 文件,但不包含子目錄下的 TODO 檔案。 build/ 表示忽略build/ 目錄下的所有文件,doc/*.txt 表示忽略doc/ 目錄下的所有.txt 文件,doc/**/* .pdf 表示忽略doc/ 目錄下以及子目錄下的所有.pdf 檔。在 .gitignore 檔案中,我們也可以使用 # 號表示註釋,和 ! 號碼取消忽略。

二、忽略已經提交的文件

在專案中,有時候我們需要對某些文件進行忽略,但是這些文件已經提交到了 Git 中。此時,如果我們修改了 .gitignore 檔案中的內容,這些檔案仍然會被追蹤到版本歷史中。因此,如果某些已經提交的檔案需要忽略,我們需要使用 git rm --cached 指令來從 Git 中刪除這些檔案的記錄。

例如,如果我們需要忽略README.md 文件,但是這個文件已經在Git 中被追蹤到了版本歷史中,那麼我們可以使用以下指令:

git rm --cached README.md

執行完這個指令後,README.md 檔案不會從本機檔案系統中刪除,只是從Git 的版本庫中刪除。此時,我們再將 README.md 檔案加入到 .gitignore 中,就可以成功忽略這個檔案了。

三、忽略資料夾

在 Git 中,我們不但可以忽略某個文件,還可以忽略一個資料夾。例如,如果我們需要忽略build/ 資料夾,那麼我們可以在.gitignore 檔案中加入以下內容:

build/

這樣,所有build/ 資料夾中的檔案都會被忽略,不會被Git 追蹤到在版本歷史中。

四、總結

在開發專案中,忽略檔案是常見的需求。 Git 提供了 .gitignore 檔案來幫助我們忽略不需要被追蹤的檔案。透過 .gitignore 文件,我們可以設定忽略文件的規則,忽略某些文件或資料夾,不對其進行版本管理。如果需要忽略已經提交到 Git 中的文件,我們需要使用 git rm --cached 命令來刪除這些文件的記錄。對於專案中的文件管理,忽略文件的設定是非常有用的技巧。

以上是git如何忽略文件的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn