.gitignore文件编写规则
1、gitignore说明
在使用git
的过程中,一般我们总会有些文件无需纳入git
的管理,也不希望它们总出现在未跟踪文件列表,这些文件通常是日志文件、临时文件、编译产生的中间文件、工具自动生成的文件等等。
此时我们可以创建一个名为 .gitignore
的文件,列出要忽略的文件模式,Git会根据这些模式规则来判断是否将文件添加到版本控制中。
注意:在windows下可以创建文件名为.gitignore.
,保存之后系统会自动重命名为 .gitignore
格式规范
- 所有空行或者以注释符号 # 开头的行都会被 Git 忽略
- 可以使用标准的 glob 模式匹配
- 匹配模式最后跟斜杠(/)说明要忽略的是目录
- 要忽略指定模式以外的文件或目录,可以在模式前加上感叹号(!)进行取反
2、glob模式
所谓的 glob 模式是指 shell 所使用的简化了的正则表达式,匹配规则如下:
"*"
:星号匹配零个或多个任意字符
[]
:匹配任何一个列在方括号中的字符,如[ab]匹配a或者匹配b
"?"
:问号匹配一个任意字符
[n-m]
:匹配所有在这两个字符范围内的字符,如[0-9]表示匹配所有0到9的数字
3、匹配示例
logs/
:忽略当前路径下的logs目录,包含logs下的所有子目录和文件
/logs.txt
:忽略根目录下的logs.txt文件
*.class
:忽略所有后缀为.class的文件
!/classes/a.class
:不忽略classes目录下的a.class文件
tmp/*.txt
:只忽略tmp目录下的.txt文件
**/foo
:可以忽略/foo, a/foo, a/b/foo等
4、定义全局的.gitignore文件
除了可以在项目中定义.gitignore
文件外,还可以设置全局的.gitignore
文件来管理所有Git项目的行为。
这种方式在不同的项目开发者之间是不共享的,是属于项目之上Git应用级别的行为。
可以在任意目录下创建相应的.gitignore
文件,然后再使用以下命令配置Git
git config --global core.excludesfile ~/.gitignore
5、.gitignore规则不生效
.gitignore
只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore
是无效的。所以一定要养成在项目开始就创建.gitignore
文件的习惯。
解决方法就是先把本地缓存删除(改变成未track状态),然后再提交:
git rm -r --cached .
git add .
git commit -m "msg"
#java
*.class #package file
*.war
*.ear
*.zip
*.tar.gz
*.rar
#maven ignore
target/
build/ #eclipse ignore
.settings/
.project
.classpatch #Intellij idea
.idea/
/idea/
*.ipr
*.iml
*.iws # temp file
*.log
*.cache
*.diff
*.patch
*.tmp # system ignore
.DS_Store
Thumbs.db
最新文章
- SQL Server 使用OPENROWSET访问ORACLE遇到的各种坑总结
- MVVM 在使用 ItemsSource 之前,项集合必须为空
- mysql 判断表字段或索引是否存在
- asp.net 运行时,";未能映射路径";
- adb命令安装apk,和安装问题daemon not running. starting it now on port 5037解决
- Python标准库05 存储对象 (pickle包,cPickle包)
- C#的类型、变量和值
- 面试题之——将文件夹下java文件写入到新的文件夹,并修改扩展名
- Javascript 思维导图
- 一张图告诉你什么是Linux distributions...
- 【Android】再来一篇Fragment懒加载(只加载一次哦)
- 基于FPGA的Sobel边缘检测的实现
- c#代码输入图片
- 修改Ueditor的图片上传地址
- 从零开始学 Web 之 Vue.js(四)Vue的Ajax请求和跨域
- m3u8文件什么合成便于播放的MP4的方法
- Python常用模块os &; sys &; shutil模块
- LeetCode--387--字符串中的第一个唯一字符
- 洛谷P3379倍增LCA
- python xlwt写excel格式控制 颜色、模式、编码、背景色
热门文章
- 《手把手教你》系列技巧篇(五十)-java+ selenium自动化测试-字符串操作-上篇(详解教程)
- Jsp/servlet分页五要素
- Mysql资料 mysqldump
- supermarket(uaf)!!!!
- [BUUCTF]PWN——bjdctf_2020_babystack2
- C语言程序设计:综合设计实验一(设计一个文字游戏)
- LuoguP7694 [COCI2009-2010#4] AUTORI 题解
- react中使用Input表单双向绑定方法
- springboot目录结构、重要配置文件、重要注解的详解
- 【LeetCode】1041. Robot Bounded In Circle 解题报告(Python)