在進(jìn)行協(xié)作開發(fā)代碼管理的過程中,常常會遇到某些臨時文件、配置文件、或者生成文件等,這些文件由于不同的開發(fā)端會不一樣,如果使用git add . 將所有文件納入git庫中,那么會出現(xiàn)頻繁的改動和push,這樣會引起開發(fā)上的不便。
Git可以很方便的幫助我們解決這個問題,那就是建立項(xiàng)目文件過濾規(guī)則。
Git中提供兩種過濾機(jī)制,一種是開放模式(全局過濾機(jī)制,即對所有的git都適用);另一種是保守模式(針對某個項(xiàng)目使用的過濾規(guī)則)。個人傾向于第二種。
(一)開放模式負(fù)責(zé)設(shè)置過濾哪些文件和文件夾
例如:
過濾文件夾設(shè)置:
/maigade/
過濾文件設(shè)置
指定過濾某種類型的文件:
*.zip
*.rar
*.via
*.tmp
*.err
指定過濾某個文件
/maigade/do.c
/maigade/if.h
(二)保守模式負(fù)責(zé)設(shè)置哪些文件不被過濾,也就是哪些文件要被跟蹤。
跟蹤某個文件夾
!/plutommi/mmi
跟蹤某類文件
!*.c
!*.h
跟蹤某個指定文件
!/plutommi/mmi/mmi_features.h
(三)配置.gitignore 的簡易原則
采用共享模式與保守模式結(jié)合配置的辦法。例如:一個文件夾下有很多文件夾和文件,而我只想跟蹤其中的一個文件,這樣設(shè)置就可以滿足這種情況,先用共享模式把整個目錄 都設(shè)置為不跟蹤,然后再用保守模式把這個文件夾中想要跟蹤的文件設(shè)置為被跟蹤,配置很簡單,就可以跟蹤想要跟蹤的文件。
項(xiàng)目示例配置
#######開放模式############
###############
# folder #
###############
/_souceInsight_/
/build/
/MoDIS/
/Doc/
/mtk_lib/
/scripts/
/header_temp/
/tools/AudioResGen/
/tools/GLBOptionSwtichRef/
/tools/GMSL/
/tools/MinGW/
/tools/MSYS/
/tools/NewMMIResourceTool/
/tools/NVRAMStatistic/
/tst/
/verno/
/plutommi/tool/
/plutommi/Customer/ResGenerator/
/plutommi/Customer/CustResource/
/plutommi/Customer/LcdResource/
/plutommi/Customer/Images/
/plutommi/mmi/Framework/EventHandling/EventsInc/mmi_menu_handlers.h
/vendor/font/MTK/official/project/plutommi/content/inc/
/vendor/font/MTK/official/project/plutommi/content/src/
###############
# fixed file #
###############
.gitignore
*.exe
*.txt
*.def
*.dsp
*.lib
*.doc
*.dll
*.lnt
*.pm
*.xls
*.dbg
*.DBG
*.o
*.plg
*.keep
###############
# temp file #
###############
~*
*.log
*.cmm
*.men
*.ini
*.fig
*.cmp
*.tmp
###############
# script #
###############
*.bat
#########保守模式############
!/plutommi/Customer/CustResource/PLUTO_MMI/
!/plutommi/Customer/LcdResource/MainLcd128X160/
!/plutommi/Customer/Images/PLUTO128X160/image.zip
!/vendor/font/MTK/official/project/plutommi/content/inc/MainLcd128X160/
!/vendor/font/MTK/official/project/plutommi/content/src/MainLcd128X160/
1:# 此為注釋 ,將被git忽略
2:*.a 忽略所有.a結(jié)尾的文件
3:!lib.a 但lib.a除外
4:/todo 僅僅忽略項(xiàng)目根目錄下的todo 文件,不包括subdir/todo
5:build/ 忽略build/目錄下的所有文件
6:doc/*.txt 忽略doc/notes.txt,但不包括doc/server/arch.txt
然后調(diào)用git add. ,執(zhí)行 git commit即可。
備注:
.gitignore只適用于尚未添加到Git庫的文件。如果已經(jīng)添加了,則需用git rm移除后再重新commit。
Git使用Gitignore建立項(xiàng)目過濾規(guī)則
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- 1.主項(xiàng)目中的.gitignore文件 app模塊下的.gitignore文件 通過上面的配置git提交的時候就會...
- Git忽略規(guī)則: 在git中如果想忽略掉某個文件,不讓這個文件提交到版本庫中,可以使用修改根目錄中 .gitign...
- 創(chuàng)建 .gitignore 隨意設(shè)置想跟蹤哪些文件 和不跟蹤哪些文件. 在項(xiàng)目根目錄下建立 .gitignore ...
- 在git中如果想忽略掉某個文件,不讓這個文件提交到版本庫中,可以使用修改根目錄中 .gitignore 文件的方法...
- 在git中如果想忽略掉某個文件,不讓這個文件提交到版本庫中,可以使用修改根目錄中 .gitignore 文件的方法...