git系列:gitignore
来源:互联网 发布:淘宝头像图片 编辑:程序博客网 时间:2024/06/04 01:00
- 1什么是 gitignore
- 2gitignore的语法
- 3gitignore实例
- 1 空文件夹
- 2 全局文件文件夹匹配
- 3 局部匹配
- 4 带空格的文件名与路径匹配
- 5 不匹配规则
- 4相关资料与链接
1、什么是 gitignore
git是一个版本控制工具,不过在工作目录中,并不是所有的文件都是需要做版本控制的,比如说编译产生的字节码文件,这种文件是不需要做版本管理,也不需要上传到github中的,但是我们又不想每次上传的时候手动删除这些文件,于是就有了gitignore文件,记录在文件中每一行都是一个规则,git根据这个规则,决定哪些文件做版本控制,这样我们就可以选择性的决定哪些文件做版本控制。
2、gitignore的语法
3、gitignore实例
当文件或文件夹匹配到gitignore
文件中的规则时,git将不会对这些文件/文件夹进行版本管理。
3.1 空文件夹
默认空文件夹不会被匹配
3.2 全局文件/文件夹匹配
abc
会匹配工作空间中所有名为abc
的文件和文件夹
abc/
匹配全局所有的名为abc
的文件夹,但是名为abc
的文件不会被匹配到
*abc
匹配全局所有的末尾字符为abc
的文件和文件夹
*abc/
匹配全局所有的末尾字符为abc
的文件夹
**/abc
匹配全局所有的名为abc
的文件和文件夹
**/abc/
匹配全局所有的名为abc
的文件夹
**/a[bc]/
匹配全局所有的名为ab
, ac
的文件夹
3.3 局部匹配
/abc
匹配项目根目录名为abc
的文件和文件夹
/abc/
匹配项目根目录名为abc
的文件夹
/abc/*/abc/**
匹配abc
目录下所有文件和文件夹
abc/bcd
匹配根目录中abc
目录下名为bcd
的文件和文件夹
abc/bcd/
匹配根目录中abc
目录下名为bcd
的文件夹
a/**/b
匹配全局所有的形式如上的文件和文件夹,例如a/f/b
, a/y/b/
a/**/b/
匹配全局所有的形式如上的文件夹,文件会忽略
/a/**/b
从根目录开始,先匹配根目录下的文件夹a
,然后匹配全局所有的形式如上的文件和文件夹,例如a/f/b
, /a/y/b/
/a/**/b/
从根目录开始,先匹配根目录下的文件夹a
,然后匹配全局所有的形式如上的文件夹,例如a/f/b
, /a/y/b/
3.4 带空格的文件名与路径匹配
如果一个文件文件名中带有空格,需要使用\
转义
\space+文件名
路径同理
3.5 不匹配规则
上面的规则,如果前面加上!
,则表示哪些文件或文件夹需要被git进行版本管理,常见的用法如下:
/abc/**!/abc/name.txt
第一句,我们将/abc
下的所有文件匹配到,git将忽略这些文件、文件夹,不过第二句表示git将会对/abc/name.txt
文件进行版本管理。
特别注意:git读取规则的时候是从上往下的,所以说,忽略匹配一定要在匹配规则之后才会生效!
4、相关资料与链接
git官方解释文档 : gitignore
pro git 中文版: Pro Git v2
git官方实例文件: github官方实例
- git系列:gitignore
- git gitignore
- Git 【.gitignore】
- Git .gitignore
- Git gitignore
- [GIT] git .gitignore
- Git笔记 - .gitignore
- Git 学习笔记--gitignore
- Git和.gitignore
- Git - .gitignore file学习
- git gitignore文件配置
- Git让gitignore生效
- git中.gitignore设置
- Git让gitignore生效
- Git .gitignore注意事项
- android git .gitignore
- Git .gitignore使用
- Git 的 .gitignore 配置
- ONT-How to Create a Debug File in Shipping Execution (文档 ID 290432.1)
- 卡尔曼滤波学习笔记
- 在GitLab上如何删除工程
- 【网络】TCP协议中的四大定时器
- Boost function使用方法
- git系列:gitignore
- 《逆向工程核心原理》学习总结(三)
- iOS开发笔记之基于键值的观察者模式(KVO)
- CSS引入的方式及link和@import的区别
- LINUX下修改mysql数据库密码
- IBatis-学习-3
- 自定义TabBarController,支持双击回到顶部
- ubuntu 默认vim 没有+寄存器
- mysql字符问题