1. 概述

  1. 开发的过程中, 无法保证项目文件夹下的所有东西, 都是想传到版本库的

    1. 比如 maven 项目的 target 目录
    2. 配置好之后, 使用 git add .命令, 这些文件\目录也不会被 stage

2. 文件位置

  1. 位置

    1. 工作目录
  2. 文件名

    .gitignore
  3. 注意

    1. 建议在创建成功之后, 把 .gitignore 文件也添加到 git 仓库中

3. 思路

  1. 编写文件

    1. 在 .gitignore 文件里指定规则
  2. 校验文件
    1. 执行 git add .
    2. git 对 untrack 和 changed 文件做匹配
      1. 如果符合 .gitignore 里的规则, 则不会做 stage 操作

4. 语法

1. 注释

  1. 概述

    1. 注释不论在什么语言, 都是很重要的
  2. 语法

    # 井号开头的行, 就是注释
    # 如果真有文件是以 # 开头, 可以在前面加 \

2. 普通文件

  1. 概述

    1. 最基本的规则
  2. 配置

    1. 概述

      1. 直接输入文件名
    2. 约定

      1. 支持通配符
      2. 以 workspace 为 pwd
        1. / 开头的路径, 也会从 workspace 开始查找
    3. 例子

      # 1. 单个文件
      Desktop.ini
      # 2. 目录下的某个文件
      build/file/file
      # 3. 某一类文件
      *.map
      # 4. 某几类文件
      *.py[co]
      # 5. 取反
      !Desktop.ini
    4. 其他

      1. 取反的配置, 建议尽量不要冲突

3. 目录

  1. 概述

    1. 单个文件的配置, 效率太低
  2. 配置

    1. 概述

      1. 目录名匹配
    2. 约定

      1. /

        1. 如果过滤项不以 / 结尾, 则会被视为 文件
        2. 如果要过滤 目录, 建议以 / 结尾
    3. 配置

      # 1. 过滤目录
      target/

4. 通配符

  1. 概述

    1. 单独讲下 通配符
  2. 通配符

      1. 匹配除了 / 之外的任意个字符
    1. ?
      1. 匹配除了 / 之外的一个字符
    2. []
      1. 匹配 [] 中的一个字符
    3. **
      1. **/file

        1. 匹配项目里每个角落的 file
      2. dir/**

        1. 匹配目录下的所有项目
      3. a/**/b

        1. 匹配 a 下的 所有 b

          1. a/b
          2. a/x/b
          3. a/x/y/b

4. 检查

  1. 概述

    1. 检查 语法 与 忽略文件
  2. 命令

    > git check-ignore -v  <fileToCheck>

ps

  1. ref

    1. 官方说明

    2. 廖雪峰

    3. github 仓库

Git - 07. gitignore的更多相关文章

  1. Git 提交 .gitignore文件

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

  2. Git中.gitignore文件不起作用

    Git中.gitignore文件不起作用的解决以及Git中的忽略规则介绍   在Studio里使用Git管理代码的过程中,可以修改.gitignore文件中的标示的方法来忽略开发者想忽略掉的文件或目录 ...

  3. git 创建.gitignore忽略不必要的文件

    问题: 创建java项目,使用git提交,有时需要忽略不必要的文件或文件夹,只保留一些基本. 例如maven创建好后,实际开发中我们只需提交:src,.gitignore,pom.xml等文件 但是有 ...

  4. Git:.gitignore和.gitkeep文件的使用 让空文件夹被跟踪

    Git:.gitignore和.gitkeep文件的使用 Git:.gitignore和.gitkeep文件的使用 https://majing.io/posts/10000001781172 .gi ...

  5. git中 gitignore 忽略文件操作

    通常,.gitignore文件被放置在存储库的根目录中.根目录也称为父目录和当前工作目录.根文件夹包含组成项目的所有文件和其他文件夹.也就是说,您可以将它放在存储库中的任何文件夹中.你甚至可以有多个. ...

  6. Git忽略.gitignore规则不生效的解决办法

    在git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改根目录中 .gitignore 文件的方法(如无,则需自己手工建立此文件). 这个文件每一行保存了一个匹配的规则例如: # 此为 ...

  7. Git的.gitignore文件配置

    .gitignore是Git工具的配置文件,用于屏蔽某些文件上传到线上. 创建.gitignore 在window系统中,不允许新建文件名以"."开头的文件,所以通过git bas ...

  8. git用.gitignore忽略指定文件

    .gitignore 配置文件用于配置不需要加入版本管理的文件,配置好该文件可以为我们的版本管理带来很大的便利,以下是个人对于配置 .gitignore 的一些心得. 1.配置语法: 以斜杠“/”开头 ...

  9. Git和.gitignore

    http://blog.csdn.net/cscmaker/article/details/8553980 在git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改根目录中 .giti ...

随机推荐

  1. MySql 存储大量长字节 Text报错处理办法

    今天线上版本的错误: Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Row size too large ...

  2. JS的冒泡事件

      在一个对象上触发某类事件(比如单击onclick事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事件处理程序或者事件返回true,那么这个事件会向这个对象的 ...

  3. cc.progressFromTo cc.progressTo(action 在duration中ProgressTimer的Percentage变化)

    let progressTimer= new cc.ProgressTimer(new cc.Sprite(fileName));this.addChild(progressTimer);progre ...

  4. 一个小时学会jQuery(转载)

    目录 一.jQuery简介与第一个jQuery程序 1.1.jQuery简介 1.2.jQuery特点 1.3.jQuery版本 1.4.获得jQuery库 1.5.第一个jQuery程序 二.jQu ...

  5. 小匠_碣 第三周期打卡 Task06~Task08

    Task06:批量归一化和残差网络:凸优化:梯度下降 批量归一化和残差网络 对输入的标准化(浅层模型) 处理后的任意一个特征在数据集中所有样本上的均值为0.标准差为1. 标准化处理输入数据使各个特征的 ...

  6. eclipse的一些使用

    1.恢复默认视图 window->perspective->open perspective ->open java 2.打开其他的一些视图,比如server(tomcat,目前使用 ...

  7. window环境下获取python安装的路径

    1.cmd + win  打开命令行 2.where python

  8. Git 添加远程github仓库的时候提示错误:fatal: remote origin already exists.

    1.先删除远程 Git 仓库 $ git remote rm origin 2.再添加远程 Git 仓库 $ git remote add origin git@github.com:wsydxian ...

  9. Python获取最新电影的信息

    这次将从电影天堂获取最新的电影的详细信息,这里电影的信息罗列的比较详细. 本来只是想获取电影的迅雷链接,然后用迅雷去下载.但看到这里的电影的信息比较完整和详细,忍不住把所有信息都爬取下来了. 下图是& ...

  10. 牛客网刷题总结—Day1

    1.关于哈夫曼树 哈夫曼树也称最优二叉树,其n个叶子节点都是带有权值的,其节点的带权路径长度(n个叶子节点的权值*其到根节点的路径之和)最小的二叉树即为哈夫曼树. 一般的哈夫曼树不存在度为1的节点(除 ...