.gitignore文件详细说明
简介
有些时候,你必须把某些文件放到 Git 工作目录中,但又不能提交它们,比如保存了数据库密码的配置文件、Java编译生成的.class文件。处理这个需求很简单,从不git add
它们就可以。但这样处理,每次git status
时都会出现Untracked files
,很不爽。
这时候就轮到.gitignore文件出场了。我们可以在仓库根目录创建.gitignore文件,在文件中添加不希望git追踪的文件路径,比如:
# window下自定义文件图标后,自动生成的文件
desktop.ini
再比如:
# IDE idea 和 VS Code的配置文件目录
.idea/
.vscode/
特殊符号
符号 | 作用 |
---|---|
# |
注释 |
! |
恢复追踪 |
? |
any one character except / |
* |
anything except / |
空格 | 多余的空格会被忽略,如果pattern中的空格不能忽略,用\ 括起来 |
转移字符 | 上面的符号如果出现在要匹配的文件或目录名中,要用\ 转移后才能匹配,比如\!important!.txt |
注意
/
和/*
/
忽略整个目录;/*
只忽略目录里的文件,但git仍然追踪这个目录
!
如果文件所在的目录被忽略了,这个文件无法恢复追踪;
# 目标: 不追踪doc目录下的所有文件和目录,除了doc/text.txt
# 正确写法
/doc/*
!doc/text.txt # 错误写法
# 原因 :doc目录被忽略了,文件无法恢复追踪
/doc/
!doc/text.txt
恢复时,要注意必须先恢复最上层
# 目标 : 只追踪doc/123.txt文件 # 正确写法
/*
!/doc/
/doc/*
!/doc/123.txt # 错误写法
# 原因 : 这个文件所在目录doc被忽略了,这个文件因为无法恢复追踪
/*
!/doc/123.txt
*
和**
**
可以用来匹配多层目录
# 只能匹配a的二级子目录的b, 比如a/x/b
/a/*/b
# 可以匹配a的任意级子目录的b,比如a/b, a/x/b, a/x/y/b ...
/a/**/b
常用配置
官方配置
Github有提供一些.gitignore的常用模板
本人配置
自己的SpringBoot项目配置
# 只追踪 源码目录、maven配置文件、README
/*
!/src/
!pom.xml
!README.md
# 源码目录中忽略的文件
# 测试文件,暂时没做测试,忽略
/src/test
# 包含敏感数据的文件
/src/main/resources/application.properties
/src/main/resources/mybatis-generator.xml
.gitignore文件详细说明的更多相关文章
- .gitignore 文件列表
GitHub 有一个十分详细的针对数十种项目及语言的 .gitignore 文件列表,你可以在https://github.com/github/gitignore 找到它.
- git知识总结-3.gitignore文件说明
1.前言 一般我们总会有些文件无需纳入 Git 的管理,也不希望它们总出现在未跟踪文件列表. 通常都是些自动生成的文件,比如日志文件,或者编译过程中创建的临时文件等. 在这种情况下,我们可以创建一个名 ...
- Git与GitHub学习笔记(三).gitignore文件忽略和删除本地以及远程文件
一.Git提供了文件忽略功能.当对工作区某个目录或者某些文件设置了忽略后,git将不会对它们进行追踪 HELP:如何在IntelliJ IDEA中使用.ignore插件忽略不必要提交的文件 问题:最近 ...
- .gitignore文件作用
目录 一.简介 二.常用规则 三.详细 一.简介 一般来说每个Git项目中都需要一个.gitignore文件,这个文件的作用就是告诉Git哪些文件不需要添加到版本管理中. 意思就是本地修改完项目后,上 ...
- 关于gitignore文件的创建与使用
在我们使用github提交本地代码时,有些库文件和日志文件是不必要提交的,那如何处理这个问题呢?这个时候我们就会用到.gitignore文件了. 该篇博客我会介绍如何创建.gitignore,以及如何 ...
- 编写.gitignore文件的几个小技巧
记录几个编写.gitignore文件的小技巧,可能你早就知道了,但我是google了一番才找到写法. 忽略所有名称为bin的文件夹 bin/ 只忽略第一级目录中,名称为bin的文件夹 /bin/ 忽略 ...
- Git的.gitignore文件配置
.gitignore是Git工具的配置文件,用于屏蔽某些文件上传到线上. 创建.gitignore 在window系统中,不允许新建文件名以"."开头的文件,所以通过git bas ...
- git之.gitignore文件用途
gitignore文件用于忽略无需追踪的文件. 配置文件: $HOME/.config/git/ignore, $GIT_DIR/info/exclude, .gitignore 举例说明: $ gi ...
- GitHub的.gitignore文件设置
用Eclipse连接GitHub 在本地仓库(最上层文件夹)建立.gitignore文件后,所有子文件夹下对应文件或者文件夹在submit的时候就会被忽略. 我将Eclipse的workspace当作 ...
随机推荐
- js 正则(部分)
/** * 增加大于某个值的验证 */window.ParsleyValidator.addValidator( 'greater', function (value,greater) { if(is ...
- css 箭头三角形
1.向下的三角形 .down{ display:inline-block; width:0px; height:0px; border-top:8px solid rgba(0, 0, 0, 0.65 ...
- SecureCRT 简单运用
1.想要从本地电脑将文件通过secureCRT传输到远程服务器如下目录 2.在SecureCRT界面中使用快捷键[Alt+P] 打开了SFTP的界面 3.找到你要传的文件的地址[E:\a.zip] 4 ...
- python-基站位置查询
本文采用的接口是聚合数据提供的 python2.7环境,3.x环境试了下好像不支持,获取位置信息为空 如下为运用代码: #coding=utf-8 ''' Created on 2019年9月18日 ...
- Spring_bean作用域
本篇介绍Spring Bean实例的作用范围,Spring Bean实例的作用范围由配置项scope限定.通过本篇的学习,可以达成如下目标. ● 应用scope配置项配置Bean的作用域 ● 应用单例 ...
- SpringCloud(二)- Consul介绍、安装、使用
唯能极于情,故能极于剑有问题或错误请及时联系小编或关注小编公众号 “CodeCow”,小编一定及时回复和改正,期待和大家一起学习交流 此文由四部分组成(Consul简介.安装.实操.总结),别着急,慢 ...
- Mysql基础(二)
多表连接 #多表查询 /* sql99标准 等值连接 ①多表等值连接的结果为多表的交集部分 ② n个连接至少需要 n-1个连接 ③一般需要为表起别名 ④可以搭配前面介绍的所有子句的使用,比如排序,分组 ...
- 线程的同步机制:同步代码块&同步方法
解决存在的线程安全问题:打印车票时出现重票,错票 使用同步代码块的解决方案 TestWindow2 package com.aff.thread; /* 使用实现Runnable接口的方式,售票 存在 ...
- & 加密
接口参数中sign加密方式: 1. 签名算法使用SHA256: 2. 服务方和消费方都需要校验签名: 3. 签名生成步骤: 第一步,设所有发送或者接收到的数据为集合M1,将集合M1内非空参数值的参数按 ...
- seo网站优化收录过少的病因分析-智狐seo顾问
seo网站优化收录过少的病因分析 很多网站优化人员都了解,一个网站收录的重要性,企业网站要想可以在百度中占据一个良好的排名,获取的权重更高,那么网站收录自然就上去了,很多站长们在操作的过程中就会出现不 ...