最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Git忽略文件.gitignore操作方法指南

 更新時(shí)間:2025年02月20日 11:15:29   作者:孤水寒月  
這篇文章主要介紹了了Git中的.gitignore文件及其用法,包括如何創(chuàng)建、配置和使用.gitignore文件來(lái)忽略不需要提交的文件和目錄,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下

Git忽略文件.gitignore

在工程中,并不是所有文件都需要保存到版本庫(kù)中的,例如“target”目錄及目錄下的文件就可以忽略。在Git工作區(qū)的根目錄下創(chuàng)建一個(gè)特殊的.gitignore文件,然后把要忽略的文件名填進(jìn)去,Git就會(huì)自動(dòng)忽略這些文件或目錄。

gitignore的基礎(chǔ)用法

#    .gitignore配置文件的一些通用技巧 [參考:https://git-scm.com/docs/gitignore]
#     1.空白行不匹配任何文件,所以可以作為可讀性的分隔符,同時(shí)兩端的空格將會(huì)被忽略.
#     2.使用[#]開(kāi)頭,將會(huì)注釋掉整行,使其不進(jìn)行匹配操作,如果需要匹配#開(kāi)頭,可以使用轉(zhuǎn)義字符[\].
#     3.1匹配模式以[/]結(jié)尾,表示想要匹配一個(gè)目錄及其子文件.(比如[foo/]會(huì)匹配foo目錄及其下面的路徑.)
#     3.2匹配模式不包含[/],將會(huì)全局匹配該文件.
#     4.通配符
#       [*]:  匹配除[/]以外的任何內(nèi)容,也就意味著[*]不能跨目錄.
#       [?]:  匹配除[/]和[[]以及[]]以外的任何一個(gè)字符.
#       [**]: 匹配所有的內(nèi)容,或者說(shuō)匹配任意目錄下的內(nèi)容.
#         示例:
#           1.[**/foo/bar]  將會(huì)匹配所有直接在foo目錄下的bar,無(wú)論foo處在何處.
#           2.[foo/**]則表示匹配foo目錄下的所有文件和目錄.
#           3.[a/**/b]則可以匹配a/b, a/c/b, a/c/d/b,即此處的[**]可以表示0個(gè)或多個(gè).
#           !!! 需要注意的是,除上面示例的用法外,剩余的[**]都是無(wú)效的..
#     5.可以通過(guò)前綴[!]來(lái)表示不忽略某些文件,比如可以通過(guò)[!a]來(lái)確保文件a不會(huì)被忽略,即時(shí)前面已經(jīng)聲明了忽略其父目錄,該模式優(yōu)先級(jí)高于普通忽略模式.

Git 三種方法忽略提交的文件

在Git項(xiàng)目中定義 .gitignore 文件

這種方式通過(guò)在項(xiàng)目的某個(gè)文件夾下定義 .gitignore 文件,在該文件中定義相應(yīng)的忽略規(guī)則,來(lái)管理當(dāng)前文件夾下的文件的Git提交行為。

.gitignore 文件是可以提交到公有倉(cāng)庫(kù)中,這就為該項(xiàng)目下的所有開(kāi)發(fā)者都共享一套定義好的忽略規(guī)則。

在 .gitingore 文件中,遵循相應(yīng)的語(yǔ)法,在每一行指定一個(gè)忽略規(guī)則。如:

*.log
*.temp
/vendor2\

在Git項(xiàng)目的設(shè)置中指定排除文件

這種方式只是臨時(shí)指定該項(xiàng)目的行為,需要編輯當(dāng)前項(xiàng)目下的 .git/info/exclude 文件,然后將需要忽略提交的文件寫(xiě)入其中。

需要注意的是,這種方式指定的忽略文件的根目錄是項(xiàng)目根目錄。

定義Git全局的 .gitignore 文件

除了可以在項(xiàng)目中定義 .gitignore 文件外,還可以設(shè)置全局的 git .gitignore 文件來(lái)管理所有Git項(xiàng)目的行為。這種方式在不同的項(xiàng)目開(kāi)發(fā)者之間是不共享的,是屬于項(xiàng)目之上Git應(yīng)用級(jí)別的行為。

這種方式也需要?jiǎng)?chuàng)建相應(yīng)的 .gitignore 文件,可以放在任意位置。然后在使用以下命令配置

Git: git config --global core.excludesfile \~/.gitignore

.gitignore文件中的忽略規(guī)則

在空格不匹配任意文件,可作為分隔符,可用反斜杠轉(zhuǎn)義

# 開(kāi)頭:標(biāo)識(shí)注釋?zhuān)梢允褂梅葱备苓M(jìn)行轉(zhuǎn)義

! 開(kāi)頭:標(biāo)識(shí)否定,該文件將會(huì)再次被包含,如果排除了該文件的父級(jí)目錄,則使用 ! 也不會(huì)再次被包含??梢允褂梅葱备苓M(jìn)行轉(zhuǎn)義

/ 結(jié)束:只匹配文件夾以及在該文件夾路徑下的內(nèi)容,但是不匹配該文件

/ 開(kāi)頭:匹配文件

如果一個(gè)模式不包含斜杠,則它匹配相對(duì)于當(dāng)前 .gitignore 文件路徑的內(nèi)容,如果該模式不在 .gitignore 文件中,則相對(duì)于項(xiàng)目根目錄

** 匹配多級(jí)目錄,可在開(kāi)始,中間,結(jié)束

? 通用匹配單個(gè)字符

[] 通用匹配單個(gè)字符列表

常用匹配示例:

bin/ :忽略當(dāng)前路徑下的bin文件夾,該文件夾下的所有內(nèi)容都會(huì)被忽略,不忽略 bin 文件
/bin :忽略根目錄下的bin文件
/*.c :忽略 cat.c,不忽略 build/cat.c
debug/*.obj : 忽略 debug/io.obj,不忽略 debug/common/io.obj 和 tools/debug/io.obj
**/foo : 忽略/foo, a/foo, a/b/foo等
a/**/b : 忽略a/b, a/x/b, a/x/y/b等
!/bin/run.sh : 不忽略 bin 目錄下的 run.sh 文件
\*.log : 忽略所有 .log 文件
config.php : 忽略當(dāng)前路徑的 config.php 文件

java忽略文件

# 編譯后的class文件,忽略所有以[.class]結(jié)尾的文件
*.class
# 日志文件,忽略所有以[.log]結(jié)尾的文件.
*.log
# BlueJ 文件,忽略所有以[.ctxt]結(jié)尾的文件.
*.ctxt
# Mobile Tools for Java (J2ME),忽略[.mtj.tmp/]目錄及其子文件.
.mtj.tmp/
# 打包文件,忽略所有以[.jar]或[.war]或[.nar]或[.ear]或[.zip]或[.tar.gz]或[rar]結(jié)尾的文件.
*.jar
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar

IDE環(huán)境忽略文件

.idea/*
.idea/compiler.xml
.idea/encodings.xml
.idea/modules.xml
*.iml

maven忽略文件

target/
pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
pom.xml.next
release.properties
dependency-reduced-pom.xml
buildNumber.properties
.mvn/timing.properties
# Avoid ignoring Maven wrapper jar file (.jar files are usually ignored)
!/.mvn/wrapper/maven-wrapper.jar

other環(huán)境忽略文件

*.sw?
.#*
*#
*~
.classpath
.project
.settings/
bin
build
target
dependency-reduced-pom.xml
*.sublime-*
/scratch
.gradle
Guardfile
README.html
*.iml
.idea

.gitignore規(guī)則不生效

.gitignore只能忽略那些原來(lái)沒(méi)有被 track 的文件,如果某些文件已經(jīng)被納入了版本管理中,則修改.gitignore是無(wú)效的。

解決方法就是先把本地緩存刪除**(改變成未track狀態(tài))**,然后再提交:

git rm -r  cached .
git add .
git commit -m 'update .gitignore'

總結(jié) 

到此這篇關(guān)于Git忽略文件.gitignore操作方法的文章就介紹到這了,更多相關(guān)Git忽略文件.gitignore內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • git切換到指定遠(yuǎn)程分支的方法

    git切換到指定遠(yuǎn)程分支的方法

    這篇文章主要介紹了git切換到指定遠(yuǎn)程分支的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • 詳解git merge命令應(yīng)用的三種情景

    詳解git merge命令應(yīng)用的三種情景

    這篇文章主要介紹了詳解git merge命令應(yīng)用的三種情景,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • git設(shè)置用戶(hù)名密碼的示例代碼

    git設(shè)置用戶(hù)名密碼的示例代碼

    這篇文章主要介紹了git設(shè)置用戶(hù)名密碼的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • 解決Git?merge時(shí)報(bào)錯(cuò):refusing?to?merge?unrelated?histories問(wèn)題

    解決Git?merge時(shí)報(bào)錯(cuò):refusing?to?merge?unrelated?histories問(wèn)題

    在使用Git進(jìn)行分支合并時(shí),可能會(huì)遇到"refusing?to?merge?unrelated?histories"錯(cuò)誤,這是因?yàn)閲L試合并的兩個(gè)分支具有不相關(guān)的歷史記錄,解決方法包括使用--allow-unrelated-histories參數(shù)來(lái)合并分支,保留各自歷史,或者直接用一個(gè)分支的內(nèi)容覆蓋另一個(gè)分支
    2024-10-10
  • 配置Jenkins自動(dòng)拉取gitlab中的代碼并部署方式

    配置Jenkins自動(dòng)拉取gitlab中的代碼并部署方式

    本文介紹了如何配置Jenkins自動(dòng)拉取GitLab中的代碼并部署,包括安裝插件、設(shè)置GitLab用戶(hù)、Jenkins添加Git用戶(hù)、在Jenkins創(chuàng)建新的任務(wù)、將代碼發(fā)布到Web服務(wù)器、配置自動(dòng)部署、配置代碼更新后自動(dòng)觸發(fā)Jenkins進(jìn)行部署等步驟
    2026-04-04
  • CLion中編譯ROS工程的配置詳細(xì)教程

    CLion中編譯ROS工程的配置詳細(xì)教程

    這篇文章主要介紹了CLion中編譯ROS工程的配置,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-08-08
  • Git獲取本地倉(cāng)庫(kù)及基礎(chǔ)操作指令總結(jié)

    Git獲取本地倉(cāng)庫(kù)及基礎(chǔ)操作指令總結(jié)

    Git是一個(gè)分布式版本控制系統(tǒng),和SVN類(lèi)似,但遠(yuǎn)比SVN強(qiáng)大的一個(gè)版本控制系統(tǒng)。本文為大家總結(jié)了一下Git獲取本地倉(cāng)庫(kù)及基礎(chǔ)操作指令,需要的可以參考一下
    2022-08-08
  • 深入剖析從輸入U(xiǎn)RL到頁(yè)面顯示過(guò)程原理

    深入剖析從輸入U(xiǎn)RL到頁(yè)面顯示過(guò)程原理

    這篇文章主要為大家深入剖析了從輸入U(xiǎn)RL到頁(yè)面顯示這中間發(fā)生的過(guò)程原理,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04
  • 在WordPress中創(chuàng)建自定義頁(yè)面模板方法詳解

    在WordPress中創(chuàng)建自定義頁(yè)面模板方法詳解

    在本文中,我們將學(xué)習(xí)如何在 WordPress 中創(chuàng)建自定義頁(yè)面模板,以及我們?nèi)绾螌⒆远x模板分配給 WordPress 中的特定頁(yè)面或頁(yè)面組,感興趣的朋友跟隨小編一起看看吧
    2021-09-09
  • TCP關(guān)閉問(wèn)題詳細(xì)介紹

    TCP關(guān)閉問(wèn)題詳細(xì)介紹

    這篇文章主要介紹了TCP關(guān)閉問(wèn)題詳細(xì)介紹的相關(guān)資料, TCP的三次握手,四次揮手,需要的朋友可以參考下
    2017-04-04

最新評(píng)論

甘泉县| 新郑市| 迁西县| 新安县| 庐江县| 新昌县| 东乌珠穆沁旗| 始兴县| 项城市| 湟源县| 垫江县| 满洲里市| 沙田区| 陕西省| 体育| 德惠市| 余庆县| 屏山县| 白朗县| 碌曲县| 阿拉善盟| 万州区| 吉木乃县| 桂阳县| 垦利县| 永修县| 抚顺县| 永仁县| 韶山市| 双鸭山市| 稷山县| 疏附县| 苍梧县| 普格县| 晋中市| 余姚市| 若尔盖县| 平乐县| 望奎县| 郁南县| 无棣县|