1. 程式人生 > >Git忽略提交規則.gitignore配置總結

Git忽略提交規則.gitignore配置總結

.gitignore介紹

在使用Git的過程中,有的檔案比如日誌,臨時檔案等不要提交到程式碼倉庫,這時就要設定相應的忽略規則,來忽略這些檔案的提交。該怎麼辦呢?很簡單,git為我們提供了一個.gitignore檔案只要在這個檔案中申明那些檔案你不希望新增到git中去,這樣當你使用git add .的時候這些檔案就會被自動忽略掉。

注意:.gitignore 檔案是可以提交到公有倉庫中,這就為該專案下的所有開發者都共享一套定義好的忽略規則。

Git忽略檔案的原則

- 忽略作業系統自動生成的檔案,比如縮圖等;

- 忽略編譯生成的中間檔案、可執行檔案等,也就是如果一個檔案是通過另一個檔案自動生成的,那自動生成的檔案就沒必要放進版本庫,比如Java編譯產生的.class檔案;

- 忽略你自己的帶有敏感資訊的配置檔案,比如存放口令的配置檔案。

.gitignore檔案的使用方法

首先,在你的工作區新建一個名稱為.gitignore的檔案。

遵循相應的語法,在每一行指定一個忽略規則

然後,把要忽略的檔名填進去,Git就會自動忽略這些檔案。

.gitignore註釋用'#', *表示匹配0個或多個任意字元,所以上面的模式就是要忽略所有的xml檔案,log檔案和apk檔案。

.gitignore忽略規則的優先順序

在 .gitingore 檔案中,每一行指定一個忽略規則,Git檢查忽略規則的時候有多個來源,它的優先順序如下(由高到低):

1)從命令列中讀取可用的忽略規則

2)當前目錄定義的規則

3)父級目錄定義的規則,依次遞推

4)$GIT_DIR/info/exclude 檔案中定義的規則

5)core.excludesfile中定義的全域性規則

.gitignore忽略規則的匹配語法

在 .gitignore 檔案中,每一行的忽略規則的語法如下:

1)空格不匹配任意檔案,可作為分隔符,可用反斜槓轉義

2)以“#”開頭的行都會被 Git 忽略。即#開頭的檔案標識註釋,可以使用反斜槓進行轉義。

3)可以使用標準的glob模式匹配。所謂的glob模式是指shell所使用的簡化了的正則表示式。

4)以斜槓"/"開頭表示目錄;"/"結束的模式只匹配資料夾以及在該資料夾路徑下的內容,但是不匹配該檔案;"/"開始的模式匹配專案跟目錄;如果一個模式不包含斜槓,則它匹配相對於當前 .gitignore 檔案路徑的內容,如果該模式不在 .gitignore 檔案中,則相對於專案根目錄。

5)以星號"*"通配多個字元,即匹配多個任意字元;使用兩個星號"**" 表示匹配任意中間目錄,比如`a/**/z`可以匹配 a/z, a/b/z 或 a/b/c/z等。

6)以問號"?"通配單個字元,即匹配一個任意字元;

7)以方括號"[]"包含單個字元的匹配列表,即匹配任何一個列在方括號中的字元。比如[abc]表示要麼匹配一個a,要麼匹配一個b,要麼匹配一個c;如果在方括號中使用短劃線分隔兩個字元,表示所有在這兩個字元範圍內的都可以匹配。比如[0-9]表示匹配所有0到9的數字,[a-z]表示匹配任意的小寫字母)。

8)以歎號"!"表示不忽略(跟蹤)匹配到的檔案或目錄,即要忽略指定模式以外的檔案或目錄,可以在模式前加上驚歎號(!)取反。需要特別注意的是:如果檔案的父目錄已經被前面的規則排除掉了,那麼對這個檔案用"!"規則是不起作用的。也就是說"!"開頭的模式表示否定,該檔案將會再次被包含,如果排除了該檔案的父級目錄,則使用"!"也不會再次被包含。可以使用反斜槓進行轉義。

注意事項

1. git對於.ignore配置檔案是按行從上到下進行規則匹配的,意味著如果前面的規則匹配的範圍更大,則後面的規則將不會生效;

2. 如果你不慎在建立.gitignore檔案之前就push了專案,那麼即使你在.gitignore檔案中寫入新的過濾規則,這些規則也不會起作用,Git仍然會對所有檔案進行版本管理。簡單來說出現這種問題的原因就是Git已經開始管理這些檔案了,所以你無法再通過過濾規則過濾它們。所以大家一定要養成在專案開始就建立.gitignore檔案的習慣,否則一單push,處理起來會非常麻煩。

相關推薦

Git忽略提交規則.gitignore配置總結

.gitignore介紹 在使用Git的過程中,有的檔案比如日誌,臨時檔案等不要提交到程式碼倉庫,這時就要設定相應的忽略規則,來忽略這些檔案的提交。該怎麼辦呢?很簡單,git為我們提供了一個.gitignore檔案只要在這個檔案中申明那些檔案你不希望新增到git中去

Git忽略提交規則 - .gitignore配置運維總結

希望 j2me 區別 文件添加 function settings spa root ont 在使用Git的過程中,我們喜歡有的文件比如日誌,臨時文件,編譯的中間文件等不要提交到代碼倉庫,這時就要設置相應的忽略規則,來忽略這些文件的提交。簡單來說一個場景:在你使用git a

Git忽略提交規則 - .gitignore配置

引用自:https://www.cnblogs.com/kevingrace/p/5690241.html 在使用Git的過程中,我們喜歡有的檔案比如日誌,臨時檔案,編譯的中間檔案等不要提交到程式碼倉庫,這時就要設定相應的忽略規則,來忽略這些檔案的提交。簡單來說一個場景:在你使用git

可能是最全的git忽略檔案規則.gitignore檔案

可能是最全的.gitgnore檔案配置。防止不相關係統自動產生的檔案提交到git上。該檔案放置到git專案的根目錄下,能夠讓git忽略符合.gitignore中檔案字尾的檔案,不會被新增到git版本控制中。 .gitignore中的檔案字尾列表大多是系統自動產生的,上傳到

git 忽略提交檔案.gitignore

## .gitignore for Grails 1.2 and 1.3 # .gitignore for maven target/ *.releaseBackup # web application files #/web-app/WEB-INF # IDE suppo

Git忽略提交規則

開發十年,就只剩下這套架構體系了! >>>   

git 忽略提交檔案設定(.gitignore配置

操作前提 : 已經安裝好了 git 操作方式 在專案根目錄 按住 shift + 右鍵, 選擇 Git Bash Here,開啟 Git 命令控制檯 使用命令在專案根目錄下 新建一個 .gitignore檔案 命令: touch .gitignore (注意: 這裡的

Git忽略提交 .gitignore配置。自動生成IDE的.gitignore。解決gitignore不生效

語法 以”#”號開頭表示註釋; 以斜槓“/”開頭表示目錄; 以星號“*”通配多個字元; 以問號“?”通配單個字元 以方括號“[]”包含單個字元的匹配列表; 以歎號“!”表示不忽略(跟蹤)匹配到的檔案或目錄; 此外,git 對於 .ignore 配置檔案是按行從上到下進行規則匹配的,意味著如果前面的規則匹配

Git 忽略提交 .gitignore

.com 狀態 info 無效 ref TP core 版本管理 匹配 Git 忽略規則 詳細的忽略規則可以參考官方英文文檔 Git 忽略規則優先級 在 .gitingore 文件中,每一行指定一個忽略規則,Git 檢查忽略規則的時候有多個來源,它的優先級如下(由高到低):

自定義Git ~ 忽略特殊檔案.gitignore配置別名、搭建Git伺服器(十八)

在 安裝 Git 一節中,我們已經配置了使用者名稱 user.name 和 Email 地址 user.email,實際上,Git還有很多可配置項。比如,讓 Git 顯示顏色,會讓 輸出的命令 看起來更醒目,如下: 這樣,Git 會適當地顯示不同的顏色,比如 git status

git忽略某些檔案(.gitignore配置語法)

很多時候我們不希望某一類檔案被git自動新增,也不希望這類檔案出現在git的未跟蹤列表中。尤其是在git status命令中輸出一大堆無關的檔案。git支援我們自定義忽略某些檔案的,git status也會變的跟清爽 我們需要在專案中與.git資料夾的同級目錄下建立一個.gitignore檔案(注

Git忽略提交規則

相關知識參考資料: https://git-scm.com/book/zh/v2/Git-基礎-記錄��% 8F%E6%AC%A1%E6%9B%B4%E6%96%B0%E5%88%B0%E4%BB%93%E5%BA%93(推薦) https://blog.c

Git忽略檔案:.gitignore

檔案內容示例: # Windows: Thumbs.db ehthumbs.db Desktop.ini # Python: *.py[cod] *.so *.egg *.egg-info dist build # My configurations: db.ini deploy_k

git 忽略提交

在git中如果想忽略掉某個檔案,不讓這個檔案提交到版本庫中,可以使用修改 .gitignore 檔案的方法。 git目錄下新建一個.gitignore(window下使用git bash工具或者cmder等  touch .gitignore) 修改.gitignore 檔案中的內容,規則如下:

Git忽略提交

Git忽略提交 方法 新增.gitignore檔案 在專案中新增.gitignore檔案 新增忽略規則 過濾規則如: *.log *.temp /vendor 更多過濾規則見參考文件 參考文件 Git忽略提交規則 - .gitig

git中過濾檔案.gitignore配置

# Eclipse .classpath .project .settings/ # Intellij .idea/ *.iml *.iws # Mac .DS_Store # Maven lo

Git忽略特殊檔案(.gitignore)

有些時候,你必須把某些檔案放到Git工作目錄中,但又不能提交它們,比如儲存了資料庫密碼的配置檔案啦,等等,每次git status都會顯示Untracked files ...,有強迫症的童鞋心裡肯定不

Git忽略規則及.gitignore規則不生效的解決辦法

ber 刪除 archive border 無效 class num build index 在git中如果想忽略掉某個文件,不讓這個文件提交到版本庫中,可以使用修改根目錄中 .gitignore 文件的方法(如無,則需自己手工建立此文件)。這個文件每一行保存了一個匹配的規

Git忽略規則.gitignore梳理

文件夾 nbsp 否則 module node code modules regex 寫法 . 在已忽略文件夾中不忽略指定文件夾 /node_modules/* !/node_modules/layer/ 2. 在已忽略文件夾中不忽略指定文件 /node_modules/*

Git忽略規則和.gitignore規則不生效的解決辦法

note 生效 sub cached git 一行 server 自己 原來 Git忽略規則: 在git中如果想忽略掉某個文件,不讓這個文件提交到版本庫中,可以使用修改根目錄中 .gitignore 文件的方法(如果沒有這個文件,則需自己手工建立此文件)。這個文件每一行保存