Git 過濾檔案 gitignore介紹

2021-10-05 06:18:31 字數 1549 閱讀 4831

在使用git的過程中,我們喜歡有的檔案比如日誌,臨時檔案,編譯的中間檔案等不要提交到**倉庫,

這時就要設定相應的忽略規則,來忽略這些檔案的提交

新建git工程之後就馬上提交gitignore檔案 除了統一個通用過濾檔案 還要審查本地工程 新增定製化的過濾規則

**************

1.進入專案所在目錄。

2.輸入 touch .gitignore ,生成「.gitignore」檔案。

vi .gitignore

*************************

【規則】

#過濾資料庫檔案、sln解決方案檔案、配置檔案 過濾所有某乙個型別的檔案

# 忽略*.o和*.a檔案 *.[oa] *.mdb *.ldb *.sln *.config 忽略工程根目錄和子目錄的所有該型別檔案 取反 該檔案 除外!my.b

#過濾資料夾debug,release,obj

/開頭防止遞迴 否者會過濾子目錄  

/結尾指定目錄型別  否者即等同檔名也等同目錄名

*******************

dbg/          #忽略根目錄和子目錄下 dbg目錄 不忽略dbg檔案

dbg           #忽略根目錄和子目錄下 dbg檔案和dbg目錄

.dbg          #忽略 隱藏 根目錄和子目錄下 隱藏 dbg檔案和dbg目錄

.dbg/         #忽略 隱藏 根目錄下 隱藏 dbg目錄

/dbg          #忽略根目錄下 dbg檔案和目錄, 子目錄的dbg 檔案和目錄不在忽略範圍內

*******************

fd1/* 忽略忽略根目錄和子目錄下 fd1下的全部內容

/fd1/* 忽略根目錄下的 fd1資料夾 目錄的全部內容

*******************

!dbg/ # 不忽略 根目錄和子目錄下 dbg目錄

以斜槓/開頭表示目錄;

以星號*通配多個字元;

以問號?通配單個字元

以方括號包含單個字元的匹配列表;

以嘆號!表示不忽略(跟蹤)匹配到的檔案或目錄;

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

在研究:gitignore的作用

最後需要強調的一點是,如果你不慎在建立.gitignore檔案之前就push了專案,那麼即使你在.gitignore檔案中寫入新的過濾規則,這些規則也不會起作用,git仍然會對所有檔案進行版本管理。

簡單來說,出現這種問題的原因就是git已經開始管理這些檔案了,所以你無法再通過過濾規則過濾它們。因此一定要養成在專案開始就建立.gitignore檔案的習慣,否則一旦push,處理起來會非常麻煩。

【git過濾已經存在的未被過濾的檔案或資料夾】

操作:1、在本地刪除需要過濾的檔案或資料夾(git 不會同步空資料夾  需要放置乙個空檔案佔位gitkeep)     

2、push上去 刪除遠端的目標過濾檔案

3、修改gitignore規則 重新push上去

git忽略版本庫中的檔案 gitignore

有些時候,工作目錄中的一些檔案沒有必要提交到版本庫中,如ide生成元資料檔案 程式編譯或解釋產生的中間檔案 源資料 密碼配置檔案等等。為了解決這個問題,可以在git工作區的根目錄下建立乙個特殊的.gitignore檔案,將要忽略的檔案寫進去,git就會忽略對這些檔案的版本控制。github上有乙個開...

Git 過濾檔案,控制上傳

文章源自 在git的版本控制中,可能有些檔案是不需要加入控制的,那我們在提交 時就需要忽略這些檔案,下面講講應該怎麼給git配置一些忽略規則。有三種方法可以忽略掉這些檔案,這三種方法都能達到目的,只不過適用情景不一樣。1 針對單一工程排除檔案,這種方式會讓這個工程的所有修改者在轉殖 的同時,也能轉殖...

git 過濾檔案,控制上傳

在git的版本控制中,可能有些檔案是不需要加入控制的,那我們在提交 時就需要忽略這些檔案,下面講講應該怎麼給git配置一些忽略規則。有三種方法可以忽略掉這些檔案,這三種方法都能達到目的,只不過適用情景不一樣。1 針對單一工程排除檔案,這種方式會讓這個工程的所有修改者在轉殖 的同時,也能轉殖到過濾規則...