1. 程式人生 > 其它 >Git倉庫下.gitignore檔案的作用

Git倉庫下.gitignore檔案的作用

.gitignore檔案的作用

.gitignore檔案用來忽略被指定的檔案或資料夾的改動,被記錄在.gitignore檔案裡的檔案或資料夾,是無法被git跟蹤到的,換句話說,被忽略的檔案是不會被放入到遠端倉庫裡的。

也就是說,如果檔案已經存在於遠端倉庫中,是無法通過.gitignore檔案來忽略的。

.gitignore檔案存放於git倉庫的根目錄下。

.gitignore檔案的語法

  1. 註釋
    "#" 表示註釋,如下:
# Here is comment.
  1. 忽略檔案/資料夾
    直接寫入檔案或資料夾名即可,指定資料夾裡的所有檔案也會一起被忽略,如下:
# ignore target folder

target/

# ignore Eclipse files

.settings/
build/
.classpath
.project
  1. 不忽略檔案/資料夾
    "!" 表示不忽略指定的檔案,如下:
# don't ignore src folder

!src/
  1. 在指定資料夾裡不忽略指定的檔案
    通過 "!" 可以實現更加有意思的用法,如下:
# ignore scaffolds folder, but don't ignore draft.md under scaffolds folder.

scaffolds/*
!scaffolds/draft.md

注意:這裡必須在資料夾後面加上/*,否則是無法實現想要的效果的。

  1. 使用萬用字元及其他符號
    可以使用萬用字元及其他符號來指定複雜條件的檔案,如下:
*.log
day_1?.txt
hello[0-9].txt

"-" 表示匹配任意字元;
"?" 表示匹配一個字元;
"[]" 表示匹配中括號內的單個字元:
可以使用-來表示連貫的字元,比如0-9,a-z,A-Z等,[0-9]表示匹配從0到9的單個字元。
可以使用來表示除外,比如[0-9]表示除0到9之外的單個字元。

.gitignore檔案的作用域與優先順序

.gitignore檔案的作用範圍是:檔案所在目錄及其所有子目錄

優先順序:如果根目錄與其子目錄下同時存在一個.gitignore檔案設定了對某一檔案忽略,與提交兩種模式:

次級目錄(子目錄)檔案中定義的模式優先於較高階(根目錄)目錄中的模式