.gitignore语法

#               表示此为注释,将被Git忽略

*.a             表示忽略所有 .a 结尾的文件

!lib.a          表示但lib.a除外

/TODO           表示仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO

build/          表示忽略 build/目录下的所有文件,过滤整个build文件夹;

doc/*.txt       表示会忽略doc/notes.txt但不包括 doc/server/arch.txt

bin/:           表示忽略当前路径下的bin文件夹,该文件夹下的所有内容都会被忽略,不忽略 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:     表示忽略当前路径的 config.php 文件

/mtk/           表示过滤整个文件夹

*.zip           表示过滤所有.zip文件

/mtk/do.c       表示过滤某个具体文件

被过滤掉的文件就不会出现在git仓库中(gitlab或github)了,当然本地库中还有,只是push的时候不会上传。

需要注意的是,gitignore还可以指定要将哪些文件添加到版本管理中,如下:

!*.zip

!/mtk/one.txt

唯一的区别就是规则开头多了一个感叹号,Git会将满足这类规则的文件添加到版本管理中。为什么要有两种规则呢?

想象一个场景:假如我们只需要管理/mtk/目录中的one.txt文件,这个目录中的其他文件都不需要管理,那么.gitignore规则应写为::

/mtk/*

!/mtk/one.txt

假设我们只有过滤规则,而没有添加规则,那么我们就需要把/mtk/目录下除了one.txt以外的所有文件都写出来!

注意上面的/mtk/*不能写为/mtk/,否则父目录被前面的规则排除掉了,one.txt文件虽然加了!过滤规则,也不会生效!

----------------------------------------------------------------------------------

还有一些规则如下:

fd1/*

说明:忽略目录 fd1 下的全部内容;注意,不管是根目录下的 /fd1/ 目录,还是某个子目录 /child/fd1/ 目录,都会被忽略;

/fd1/*

说明:忽略根目录下的 /fd1/ 目录的全部内容;

/*

!.gitignore

!/fw/ 

/fw/*

!/fw/bin/

!/fw/sf/

说明:忽略全部内容,但是不忽略 .gitignore 文件、根目录下的 /fw/bin/ 和 /fw/sf/ 目录;注意要先对bin/的父目录使用!规则,使其不被排除。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
.gitignore 语法可以通过以下几种规则来过滤文件和文件夹: 1. 使用斜杠(/)表示匹配到一个目录或文件,斜杠可以用于规则的起始、中间和尾部。例如,规则 "App.vue" 可以匹配到任意位置的 App.vue 文件。 2. 使用感叹号(!)表示取反操作,即让 Git 再次跟踪被忽略的文件或目录。但需要注意的是,指定忽略的文件或目录的父目录不能被整体忽略。例如,如果先包含 "src" 目录,然后忽略 "!src/App.vue" 是无效的,应该写成 "src/*",然后再忽略 "!src/App.vue"。 3. 使用星号(*)表示匹配任意字符,包括目录分隔符(斜杠)。例如,规则 "abc/**" 表示匹配 "abc" 之后任意目录下的文件。 4. 使用双星号(**)有三种语义:**/foo 表示匹配任意目录下的 "foo" 文件;"abc/**" 表示匹配 "abc" 之后任意目录下的文件;"a/**/b" 表示匹配 "a" 目录下任意级别的子目录 "b"。 5. 使用井号(#)表示注释,在注释后的内容会被忽略。 6. 空白符,如空格和回车,会被 Git 忽略,可以使用空格和回车来使得文件更易读。 除了 .gitignore 文件,还有其他工具也会使用 ignore 文件,如 .eslintignore, .prettierignore 等,它们的语法与 .gitignore 一样。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [.gitignore语法](https://blog.csdn.net/yuan_jlj/article/details/125148321)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* [.gitignore 语法](https://blog.csdn.net/huangpb123/article/details/125175028)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值