Git - 07. gitignore
1. 概述
- 开发的过程中, 无法保证项目文件夹下的所有东西, 都是想传到版本库的
- 比如 maven 项目的 target 目录
- 配置好之后, 使用
git add .命令, 这些文件\目录也不会被 stage
2. 文件位置
位置
- 工作目录
文件名
.gitignore
注意
- 建议在创建成功之后, 把 .gitignore 文件也添加到 git 仓库中
3. 思路
- 编写文件
- 在 .gitignore 文件里指定规则
- 校验文件
- 执行
git add . - git 对 untrack 和 changed 文件做匹配
- 如果符合 .gitignore 里的规则, 则不会做 stage 操作
- 执行
4. 语法
1. 注释
概述
- 注释不论在什么语言, 都是很重要的
语法
# 井号开头的行, 就是注释
# 如果真有文件是以 # 开头, 可以在前面加 \
2. 普通文件
概述
- 最基本的规则
配置
概述
- 直接输入文件名
约定
- 支持通配符
- 以 workspace 为 pwd
- / 开头的路径, 也会从 workspace 开始查找
例子
# 1. 单个文件
Desktop.ini
# 2. 目录下的某个文件
build/file/file
# 3. 某一类文件
*.map
# 4. 某几类文件
*.py[co]
# 5. 取反
!Desktop.ini
其他
- 取反的配置, 建议尽量不要冲突
3. 目录
概述
- 单个文件的配置, 效率太低
配置
概述
- 目录名匹配
约定
- /
- 如果过滤项不以 / 结尾, 则会被视为 文件
- 如果要过滤 目录, 建议以 / 结尾
- /
配置
# 1. 过滤目录
target/
4. 通配符
概述
- 单独讲下 通配符
通配符
- 匹配除了 / 之外的任意个字符
- ?
- 匹配除了 / 之外的一个字符
- []
- 匹配 [] 中的一个字符
- **
**/file
- 匹配项目里每个角落的 file
dir/**
- 匹配目录下的所有项目
a/**/b
- 匹配 a 下的 所有 b
- a/b
- a/x/b
- a/x/y/b
- 匹配 a 下的 所有 b
4. 检查
概述
- 检查 语法 与 忽略文件
命令
> git check-ignore -v <fileToCheck>
ps
Git - 07. gitignore的更多相关文章
- Git 提交 .gitignore文件
问题描述 不知道小伙伴有木有遇到这种情况:想在工程里增加 .gitignore 文件,用于在以后提交后,过滤哪些文件或者目录. 但是,在当前工程的根目录下,执行如下执行命令后,依然不能把 .gitig ...
- Git中.gitignore文件不起作用
Git中.gitignore文件不起作用的解决以及Git中的忽略规则介绍 在Studio里使用Git管理代码的过程中,可以修改.gitignore文件中的标示的方法来忽略开发者想忽略掉的文件或目录 ...
- git 创建.gitignore忽略不必要的文件
问题: 创建java项目,使用git提交,有时需要忽略不必要的文件或文件夹,只保留一些基本. 例如maven创建好后,实际开发中我们只需提交:src,.gitignore,pom.xml等文件 但是有 ...
- Git:.gitignore和.gitkeep文件的使用 让空文件夹被跟踪
Git:.gitignore和.gitkeep文件的使用 Git:.gitignore和.gitkeep文件的使用 https://majing.io/posts/10000001781172 .gi ...
- git中 gitignore 忽略文件操作
通常,.gitignore文件被放置在存储库的根目录中.根目录也称为父目录和当前工作目录.根文件夹包含组成项目的所有文件和其他文件夹.也就是说,您可以将它放在存储库中的任何文件夹中.你甚至可以有多个. ...
- Git忽略.gitignore规则不生效的解决办法
在git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改根目录中 .gitignore 文件的方法(如无,则需自己手工建立此文件). 这个文件每一行保存了一个匹配的规则例如: # 此为 ...
- Git的.gitignore文件配置
.gitignore是Git工具的配置文件,用于屏蔽某些文件上传到线上. 创建.gitignore 在window系统中,不允许新建文件名以"."开头的文件,所以通过git bas ...
- git用.gitignore忽略指定文件
.gitignore 配置文件用于配置不需要加入版本管理的文件,配置好该文件可以为我们的版本管理带来很大的便利,以下是个人对于配置 .gitignore 的一些心得. 1.配置语法: 以斜杠“/”开头 ...
- Git和.gitignore
http://blog.csdn.net/cscmaker/article/details/8553980 在git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改根目录中 .giti ...
随机推荐
- H3C IP路由基础
一.路由简介 在网络中路由器根据所收到的报文的目的地址选择一条合适的路径,并将报文转发到下一个路由器.路径中最后一个路由器负责将报文转发给目的主机. 路由就是报文在转发过程中的路径信息,用来指导报文转 ...
- Python之路Day09
函数 将某个功能封装到一个空间中就是一个函数 减少重复代码 函数体中存放的时代码 定义函数 def len(): def 关键字 len 函数名 -- 变量名 ()格式规定 :语句结束 调用函数 函数 ...
- [USACO12FEB] 附近的牛 Nearby Cows - 树形dp,容斥
给你一棵 \(n\) 个点的树,点带权,对于每个节点求出距离它不超过 \(k\) 的所有节点权值和 \(m_i\) 随便定一个根,设\(f[i][j]\)表示只考虑子树,距离为\(j\)的权值和,\( ...
- Nginx绑定IP,解决session共享
1.Nginx通过负载均衡IP地址固定绑定,解决Session共享 upstream note.java.itcast.cn{ ip_hash; server ...
- 互联网的“ip分组交换技术”
(1)从名字分析 从“ip分组交换”这个名字中,我们看看涉及哪些事情. 1)交换 主要涉及两类交换. · 交换机:负责网内部数据交换 · 路由器:负责网间的数据交换. ip分组交换技术的核心就是路由器 ...
- 四、CentOS 7安装Oracle JDK
CentOS 7安装Oracle JDK,查看Linux是否自带的JDK,如有openJDK,则卸载 CentOS7.1 JDK安装 1.卸载自带OPENJDK 用 java -version ...
- 2019牛客多校第五场 F maximum clique 1 状压dp+最大独立集
maximum clique 1 题意 给出一个集合s,求每个子集的最大独立集的权值和(权值是独立集的点个数) 分析 n比较小,一股浓浓的暴力枚举每一个子集的感觉,但是暴力枚举模拟肯定会T,那么想一想 ...
- ORA-00904: "I_LEVEL": invalid identifier
问题描述 ORA-00904: "I_LEVEL": invalid identifier 标示符无效
- mysql 查询——逻辑查询
--去重查询 distinct select distinct gander from student; --逻辑查询 and or not --查询18-28之间的数据 select *from s ...
- php基础系列之 数据的存储和读取
·文件处理 ·写入一个文件 1,打开这个文件.如果这个文件不存在,需要先创建它 2,将数据写入这个文件 3,关闭这个文件 ·从一个文件读出数据 1,打开这个文件.如果这个文件不能打开(例如,文件不存在 ...