git忽略文件提交 .gitignore
Git 忽略规则
详细的忽略规则可以参考官方英文文档
Git 忽略规则优先级
在 .gitingore 文件中,每一行指定一个忽略规则,Git 检查忽略规则的时候有多个来源,它的优先级如下(由高到低):
- 从命令行中读取可用的忽略规则
 - 当前目录定义的规则
 - 父级目录定义的规则,依次递推
 - $GIT_DIR/info/exclude 文件中定义的规则
 - core.excludesfile中定义的全局规则
 
Git 忽略规则匹配语法
在 .gitignore 文件中,每一行的忽略规则的语法如下:
- 空格不匹配任意文件,可作为分隔符,可用反斜杠转义
 - # 开头的文件标识注释,可以使用反斜杠进行转义
 - ! 开头的模式标识否定,该文件将会再次被包含,如果排除了该文件的父级目录,则使用 ! 也不会再次被包含。可以使用反斜杠进行转义
 - / 结束的模式只匹配文件夹以及在该文件夹路径下的内容,但是不匹配该文件
 - / 开始的模式匹配项目跟目录
 - 如果一个模式不包含斜杠,则它匹配相对于当前 .gitignore 文件路径的内容,如果该模式不在 .gitignore 文件中,则相对于项目根目录
 - ** 匹配多级目录,可在开始,中间,结束
 - ? 通用匹配单个字符
 - [] 通用匹配单个字符列表
 
常用匹配示例:
- bin/: 忽略当前路径下的bin文件夹,该文件夹下的所有内容都会被忽略,不忽略 bin 文件
 - /bin: 忽略根目录下的bin文件
 - /*.c: 忽略 cat.c,不忽略 build/cat.c
 - debug/*.obj: 忽略 debug/io.obj,不忽略 debug/common/io.obj 和 tools/debug/io.obj
 - **/foo: 忽略/foo, a/foo, a/b/foo等
 - a/**/b: 忽略a/b, a/x/b, a/x/y/b等
 - !/bin/run.sh: 不忽略 bin 目录下的 run.sh 文件
 - *.log: 忽略所有 .log 文件
 - config.php: 忽略当前路径的 config.php 文件
 
.gitignore规则不生效
.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。
解决方法就是先把本地缓存删除(改变成未track状态),然后再提交:
git rm -r --cached .
git add .
git commit -m 'update .gitignore'git忽略文件提交 .gitignore的更多相关文章
- C# git忽略文件 (.gitignore )
		
# Visual Studio # User-specific files *.suo *.user *.userosscache *.sln.docstates # User-specific fi ...
 - 添加git 忽略文件
		
在使用Git的过程中,我们喜欢有的文件比如日志,临时文件,编译的中间文件等不要提交到代码仓库,这时就要设置相应的忽略规则,来忽略这些文件的提交. Git 忽略文件提交的方法 有三种方法可以实现忽略Gi ...
 - Git 的两种忽略文件方式 gitignore 和 exclude
		
Git 的两种忽略文件方式 gitignore 和 exclude .gitignore 不用说了,大家都知道. 有一个 exclude 可能接触比较少. 知道这个功能后发现,用在服务器上非常方便,因 ...
 - Git忽略规则及.gitignore规则不生效的解决办法
		
在git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改根目录中 .gitignore 文件的方法(如无,则需自己手工建立此文件).这个文件每一行保存了一个匹配的规则例如: # 此为注 ...
 - Git忽略文件方法【转】
		
转自:http://www.cnblogs.com/shangdawei/archive/2012/09/08/2676669.html http://cwind.iteye.com/blog/166 ...
 - git忽略文件【转】
		
转自: http://cwind.iteye.com/blog/1666646 有很多文件不必使用git管理.例如Eclipse或其他IDE生成的项目文件,编译生成的各种目标或临时文件等.使用git ...
 - git忽略文件不起作用时
		
开始我是直接进到仓库建立了.gitignore文件,再从仓库进入到项目add时总是会添加不需要添加的文件, 后来明白应该是在哪里提交在哪里创建.gitignore文件 git忽略文件操作步骤如下: 1 ...
 - Git忽略规则和.gitignore规则不生效的解决办法
		
Git忽略规则和.gitignore规则不生效的解决办法 Git忽略规则: 在git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改根目录中 .gitignore 文件的方法(如果 ...
 - eclipse设置git忽略文件
		
使用eclipse开发的程序员们经常会接触版本控制软件,这里只要说下eclipse使用egit的情况下设置忽略文件. 特此说明在这里使用window->team->ignored对于git ...
 
随机推荐
- 【Python自动化Excel】pandas处理Excel数据的基本流程
			
这里所说的pandas并不是大熊猫,而是Python的第三方库.这个库能干嘛呢?它在Python数据分析领域可是无人不知.无人不晓的.可以说是Python世界中的Excel. pandas库处理数据相 ...
 - Windows 10 安装 Git 与初次运行前的配置
			
Windows 10 安装 Git 与初次运行前的配置 在 Windows 上安装 初次运行 Git 前的配置 用户信息 文本编辑器 检查配置信息 获取 Git 仓库 在现有目录中初始化仓库 克隆现有 ...
 - 网络协议学习笔记(九)CDN和数据中心
			
概述 上一篇给大家介绍了DNS协议和HttpDns协议,现在给大家介绍一下CDN和数据中心相关的知识. CDN:你去小卖部取过快递么? 如果你去电商网站下单买个东西,这个东西一定要从电商总部的中心仓库 ...
 - Go Error 嵌套到底是怎么实现的?
			
原文链接: Go Error 嵌套到底是怎么实现的? Go Error 的设计哲学是 「Errors Are Values」. 这句话应该怎么理解呢?翻译起来挺难的.不过从源码的角度来看,好像更容易理 ...
 - 安装MySQL到Ubuntu 20.04
			
本文的内容主要来自对How To Install MySQL on Ubuntu 20.04的翻译.在根据该文的指导下,我在自己的Ubuntu 20.04.3 LTS版本中安装了MySQL 8. St ...
 - python技巧一行命令搞定局域网共享
			
python超强玩法--一行命令搞定局域网共享  今天刷到python的一个新玩法,利用python自带的http服务,快速创建局域网共享服务,命令如下: python -m thhp.server ...
 - QMainWindow(一)
			
mainwindow.h: #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> class MainWindo ...
 - Python实现查询12306火车票信息
			
例子来源于马哥的公众号,看了几遍,有些地方存在些疑问,然后就自己查找些资料,重写的一下,但是对于获取到的信息,并不能有效的解析出来,而且对于中文字符处理,并不是很好,请大神指教下!谢过! 1.接口设置 ...
 - collate utf8_bin是什么意思
			
创建数据库时 collate utf_bin是 以二进制值比较,也就是区分大小写,collate是核对的意思 uft-8_general_ci 一般比较,不区分大小写
 - 负载均衡后端状态(proxy_next_upstream 后端错误标识)
			
目录 一:负载均衡后端状态 二:down(无论什么情况不会分配流量) 三:backup(备用只有当所有的机器宕机(关闭)才能启动备份服务器) 四:max_fails.fail_timeout(结合使用 ...