当前位置:   article > 正文

使用 GIT 时忽略不需要管理的文件或文件夹(.gitignore 文件的作用)_git忽略上传 打包文件.exe,避免占用服务器存储有什么用

git忽略上传 打包文件.exe,避免占用服务器存储有什么用

在使用 GIT 管理代码的时候,项目中总是会有一些文件我们不需要加入到 GIT 仓库中进行保管, 我们也不希望在工作目录列表中看到它们,比如说一些一些编译的中间文件,常用的源外编译的 build 文件夹等等。为了过滤这些文件,我们可以创建一个名为 .gitignore 的文件,在其中列出需要过滤文件的模式,其遵循 glob 文件匹配模式


文件 .gitignore 的格式如下:

  • 所有空行或者以注释符号 # 开头的行都会被 Git 忽略。
  • 可以使用标准的 glob 文件模式匹配。
  • 匹配模式最后跟反斜杠(/)说明要忽略的是目录。
  • 要忽略指定模式以外的文件或目录,可以在模式前加上惊叹号(!)取反。

glob 匹配规则:

匹配符说明
*匹配文件路径中的0个或多个字符,但不会匹配路径分隔符,除非路径分隔符出现在末尾
**匹配路径中的0个或多个目录及其子目录,需要单独出现,即它左右不能有其他东西了。如果出现在末尾,也能匹配文件。
?匹配文件路径中的一个字符(不会匹配路径分隔符)
[...]匹配方括号中出现的字符中的任意一个,当方括号中第一个字符为^或!时,则表示不匹配方括号中出现的其他字符中的任意一个
!(pattern|pattern|pattern)匹配任何与括号中给定的任一模式都不匹配的
?(pattern|pattern|pattern)匹配括号中给定的任一模式0次或1次
+(pattern|pattern|pattern)匹配括号中给定的任一模式至少1次
@(pattern|pattern|pattern)匹配括号中给定的任一模式1次
*(pattern|pattern|pattern)匹配括号中给定的任一模式0次或多次

举例:

# 此为注释 – 将被 Git 忽略
# 忽略所有 .a 结尾和 .b 结尾的文件
*.[ab]
# 但 lib.a 除外
!lib.a
# 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
/TODO
# 忽略文件名为 build 的文件,和以 build 为名的目录
build
# 忽略 build/ 目录下的所有文件,但如果当前目录有文件名为 build,该文件不会被忽略
build/
# 会忽略 doc/ 目录下以 .txt 结尾的文件,但不会忽略 doc/subdir/ 目录下以 .txt 结尾的文件
doc/*.txt
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

参考文献:《Pro Git》

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/435353
推荐阅读
相关标签
  

闽ICP备14008679号