前言

gitignore文件

  • 通过设置gitignore指定(git)要忽略的文件。
  • 设置gitignore的方式:$XDG_CONFIG_HOME/git/ignore$GIT_DIR/info/exclude.gitignore
  • 本文主要说这个:.gitignore

.gitignore文件

  • .gitignore文件中的每一行指定一个匹配规则。
  • 子目录从父目录继承匹配规则。
  • 最后匹配规则有效(后面的匹配规则替换前面的匹配规则)。

匹配规则如何编写

  • 注释行以# 开头。
  • 空格不匹配任意文件。它可用反斜杠转义获得,比如当文件名中包含空格时,可以用\空格(\为转义符)表示空格
  • ! 开头的匹配规则表示否定含义,即该匹配规则匹配的文件会再次被git包含在内。有一个例外,当在! 开头的匹配规则之前,已将包含该文件的目录忽略时,则该! 开头的匹配规则不生效(无论它们在哪里定义。先来后到?)。
  • 所有路径都是相对于.gitignore文件的。
  • 斜线/用作目录分隔符。分隔符可能出现在.gitignore匹配规则的开头、中间或结尾。
  • 匹配规则中不包含分隔符(/)时,该匹配规则应用在低于该.gitignore级别的任何级别。比如*.tmp,可能匹配到/t1.tmp/t2.tmp/a/t1.tmp/a/b/t1.tmp
  • 匹配规则开头或中间包含分隔符(/)时,该匹配规则为相对路径,且应用在该.gitignore级别。比如/t1.tmp,匹配到/t1.tmpt1.tmp,匹配到/t1.tmp
  • 匹配规则末尾包含分隔符(/)时,该匹配规则只匹配目录,否则模式可以匹配文件和目录。比如doc/frotz/匹配doc/frotz目录,但不匹配a/doc/frotz目录;frotz/匹配frotza/frotza/b/frotz目录。
  • 星号“ *”匹配任何内容(任意多个任何字符)。
  • 匹配规则开头包含2个星号(**)时,该匹配规则在低于该.gitignore级别的任何级别匹配。例如, **/foo在当前目录或子目录匹配foo文件或目录(与 foo 等效)。**/foo/bar 在当前目录或子目录匹配foo/bar文件或目录(与 foo/bar 不等效)。
  • 匹配规则末尾包含斜杠+2个星号/**)时,该匹配规则匹配所有内容。例如,“ abc/**”匹配 abc目录内的所有文件及abc子目录内的所有文件,无限深度。
  • 匹配规则中间包含斜杠+2个星号/**)时,该匹配规则匹配零个或多个目录。例如, a/**/b匹配a/ba/x/ba/x/y/b等。
  • 字符“ ?”匹配除分隔符(/)之外的任何一个字符。
  • 范围表示法,例如[a-zA-Z],可用于匹配范围中的任何一个字符。

示例

参考

https://git-scm.com/docs/gitignore

【git】.gitignore文件相关推荐

  1. Git .gitignore文件忽略(自己做过测试了)

    Git提供了文件忽略功能.当对工作区某个目录或者某些文件设置了忽略后,git将不会对它们进行追踪. 一.建立.gitignore文件 在项目根目录下创建一个名为.gitignore的文件(注意文件的前 ...

  2. Git gitignore文件讲解

    文章目录 1. 忽略某个文件 2. 忽略某种类型文件 3. 取反不忽略指定文件 4. 忽略某个文件夹 5. 忽略文件配置 gitignore文件放置到项目的根目录中,为了让git管理文件中忽略指定的文 ...

  3. 添加git 忽略文件

    在使用Git的过程中,我们喜欢有的文件比如日志,临时文件,编译的中间文件等不要提交到代码仓库,这时就要设置相应的忽略规则,来忽略这些文件的提交. Git 忽略文件提交的方法 有三种方法可以实现忽略Gi ...

  4. 如何创建.gitignore文件,忽略git不必要提交的文件

    1.在需要创建 .gitignore 文件的文件夹, 右键选择Git Bash 进入命令行,进入项目所在目录. 2.输入 touch .gitignore ,生成".gitignore&qu ...

  5. git如何忽略已经提交的文件 (.gitignore文件无效)

    一. 问题 在初始化git仓库的时候没有创建.gitignore文件来过滤不必要提交的文件, 后来却发现某些文件不需要提交, 但是这些文件已经被提交了, 这时候创建.gitignore文件忽略这些文件 ...

  6. Git 提交 .gitignore文件

    问题描述 不知道小伙伴有木有遇到这种情况:想在工程里增加 .gitignore 文件,用于在以后提交后,过滤哪些文件或者目录. 但是,在当前工程的根目录下,执行如下执行命令后,依然不能把 .gitig ...

  7. Git中.gitignore文件的使用

      在我们使用git的时候,有时候就不想传一些与代码无关的文件到远程仓库中,比如说编译后的文件,.gitignore就可以帮助我们处理这些文件. 生成.gitignore文件 在git bash中使用 ...

  8. $git学习总结系列(4)——gitignore文件

    有时候工作区中会有我们创建的一些密码配置文件,或者自动生成的一些临时文件,比如python代码编译产生的.pyc文件和java代码编译产生的.class文件等,我们在提交代码的时候没有必要把这些文件也 ...

  9. git 忽略文件 .gitignore 以及规则

    git提供了文件忽略系统,当对工作区某个目录或文件设置了忽略后,在执行status查看状态时,被忽略的文件即使存在也不会显示出来. 这样我就可以把那些不需要上传,不需要保留的文件或目录忽略掉(比如一些 ...

最新文章

  1. redis php异步队列,基于workerman的redis-queue实现异步邮件队列
  2. OPEN ERP相关财务的基本概念
  3. 网站集成支付宝的方法和所需资料下载
  4. html pc端万年历插件,# pc端个性化日历实现
  5. 新手学linux之-----------memroy.c
  6. 7-2 单源最短路径 (10 分)(思路+详解+邻接表做法)Come Brather!!!!!!!!!!
  7. 比较OpenDDR和WURFL
  8. Go 切片使用绕坑指南
  9. 无心剑中译奥修《奥修对爱与婚姻的印象》
  10. R语言switch语句报错Error: duplicate ‘switch‘ defaults
  11. 用c语言枚举计算坐标,来个c++枚举有效范围计算器
  12. 在同一台服务器上安装两个数据库
  13. JDBC操作数据库的基本步骤:
  14. 计算机桌面字体咋调整,如何调整电脑桌面字体的大小
  15. 【渝粤题库】陕西师范大学800012 区域经济学
  16. 查看计算机启动项命令,运行命令开机启动项msconfig命令简介及教程
  17. 速度围观 | 如何用大数据拆散一对异地恋情侣
  18. 台式计算机识别不了鼠标,USB无线鼠标失灵电脑检测不到无法识别怎么办
  19. Linux/Android之perf追内存泄漏工具(api级别)(一百)
  20. 使用Matlab将抖音视频转换成gif图片

热门文章

  1. MySQL Server 5.0安装教程
  2. Springboot如何利用http请求控制器
  3. 二分查找算法及其变种
  4. 删除我的电脑里面软件快捷方式
  5. 日志审计产品(转载)
  6. new Random().Next(1, 100); 多线程同时执行结果很高概率相同,
  7. 解决idea 控制台中文乱码
  8. php中的var_dump()方法的详细说明
  9. HttpClient, 使用C#操作Web
  10. MySQL优化必须调整的10项配置