详解Git中的.gitignore文件
1.什么是.gitignore文件?有什么作用?
在Git中,有一种特殊的文件,其文件全名就是 .gitignore,这个文件可以用txt打开,主要功能是屏蔽某些文件,使得这些文件不被追踪(tracked),自然push后也不会上传到github等平台。
2.有什么规则?
(1)# content
开头以‘#’的行在.gitignore中起注释作用,所以'#’后的content在.gitignore中不起任何作用。
(2)/ToDo
以'/'开头的表示仅屏蔽当前文件夹ToDo下的文件。需要注意的是空文件夹不会被追踪。
|--.gitignnore
|--ToDo--test0.txt
|--TooDo--|---ToDo--test1.txt
|--TDoo
|--testGit.txt
|--license.txt
在上述文档结构下,test0.txt将被屏蔽,test1.txt不会被屏蔽,即显示TooD未被追踪,TDoo由于是空文件夹,所以也不会被追踪,而testGit.txt和license.txt已被提交,所以也不是未被追踪。
验证如下:

(3)ToDo/
以'/'结尾的表示屏蔽所有名为ToDo文件夹下的文件下的文件都会被屏蔽。
|--.gitignnore
|--ToDo--test0.txt
|--TooDo--|---ToDo--test1.txt
|--TDoo
|--testGit.txt
|--license.txt
在上述文档结构下,test0.txt和test1.txt均会被屏蔽,即没有被追踪的,而testGit.txt和license.txt已被提交,所以也不是未被追踪。
验证如下:

(4)!a.a
忽略a.a,即对a.a也追踪,一般搭配*.a,而*.a解释见下面一条。
(5)*.a
屏蔽所有扩展名为a的文件,如1.a, 2.a等。
|--.gitignnore
|--ToDo--test0.txt
|--TooDo--|---ToDo--test1.txt
|--TDoo--2.a
|--1.a
对如上文档结构,由于屏蔽了1.a, 2.a所以追踪到test0.txt和test1.txt,即追踪ToDo,TooD文件夹。

(6)*.[abc]
屏蔽所有扩展名为a,或者b或者c的文件。
|--.gitignnore
|--ToDo--test0.txt
|--TooDo--|---ToDo--test1.txt
|--TDoo--2.b
|--1.a
对如上文档结构,由于屏蔽了1.a, 2.b所以追踪到test0.txt和test1.txt,即追踪ToDo,TooD文件夹。
验证如下:

(7)*.a?
屏蔽所有扩展名以a开头,且扩展名只有2个字符的文档。?表示一个字符
|--.gitignnore
|--ToDo--5.abc
|--TooDo--|---ToDo--6.a
|--TDoo--4.ab
|--1.a
|--2.ab
|--3.abc
在上述文档结构中,2.ab,4.ab被屏蔽,其他的都被追踪。

(8)[0-9].txt
屏蔽0.txt,1.txt,2.txt...9.txt。
(9)doc/**/*.p
屏蔽doc下所有扩展名为p的文件。**表示嵌套路径,即doc下的多层路径。
|--.gitignore
|--5.p
|--doc|--1.p
|--TDoo--4.p
|--ToDo--3.p
|--TooD--ToDo--2.p
在如上文档结构中,1.p,3.p,4.p被屏蔽,5.p由于不在doc文件下,被追踪。

详解Git中的.gitignore文件的更多相关文章
- git中使用.gitignore文件
在进行协作开发代码管理的过程中,常常会遇到某些临时文件.配置文件.或者生成文件等,这些文件由于不同的开发端会不一样,如果使用git add . 将所有文件纳入git库中,那么会出现频繁的改动和push ...
- 详解 git 忽略文件 删除远端仓库的文件
要解决的问题 忽略指定类型的文件 或 某个指定文件(夹) 将已经push到github的文件删除, 但本地的文件不删除 (写忽略规则之前就把这个文件夹push了 T_T ) 将想要忽略掉的文件的相关记 ...
- Git中使用.gitignore忽略文件的推送
转载自:https://blog.csdn.net/lk142500/article/details/82869018 windows下可以用另存为生成gitignore 文件 1 简介 在使用Git ...
- Windows系统Git安装教程(详解Git安装过程)
Windows系统Git安装教程(详解Git安装过程) 今天更换电脑系统,需要重新安装Git,正好做个记录,希望对第一次使用的博友能有所帮助! 获取Git安装程序 到Git官网下载,网站地址: ...
- 图文详解Unity3D中Material的Tiling和Offset是怎么回事
图文详解Unity3D中Material的Tiling和Offset是怎么回事 Tiling和Offset概述 Tiling表示UV坐标的缩放倍数,Offset表示UV坐标的起始位置. 这样说当然是隔 ...
- 【转】详解C#中的反射
原帖链接点这里:详解C#中的反射 反射(Reflection) 2008年01月02日 星期三 11:21 两个现实中的例子: 1.B超:大家体检的时候大概都做过B超吧,B超可以透过肚皮探测到你内 ...
- 详解Webwork中Action 调用的方法
详解Webwork中Action 调用的方法 从三方面介绍webwork action调用相关知识: 1.Webwork 获取和包装 web 参数 2.这部分框架类关系 3.DefaultAction ...
- java 乱码详解_jsp中pageEncoding、charset=UTF -8"、request.setCharacterEncoding("UTF-8")
http://blog.csdn.net/qinysong/article/details/1179480 java 乱码详解__jsp中pageEncoding.charset=UTF -8&quo ...
- 举例详解Python中的split()函数的使用方法
这篇文章主要介绍了举例详解Python中的split()函数的使用方法,split()函数的使用是Python学习当中的基础知识,通常用于将字符串切片并转换为列表,需要的朋友可以参考下 函数:sp ...
- Git 忽略规则 .gitignore文件 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
随机推荐
- Python异步编程进阶指南:破解高并发系统的七重封印
title: Python异步编程进阶指南:破解高并发系统的七重封印 date: 2025/2/25 updated: 2025/2/25 author: cmdragon excerpt: 本文是异 ...
- vue - [02] 安装部署
Vue.js 是一个流行的前端JavaScript框架,用于构建用户界面. 001 || 通过CND快速开始 只需要在HTML文件中引入VUE的CDN链接即可 (1)创建HTML文件 <!DOC ...
- 记一次Microsoft.Toolkit.Mvvm(MVVM Toolkit)的兼容性问题
今天在目标框架为framework4.6.1的wpf项目中使用Microsoft.Toolkit.Mvvm7.1.1出现了一个比较怪异的编译时错误,前提是打开了 工具>选项>环境>预 ...
- ITSM运维管理整理总结
ITSM 和我们平常所说的软件管理最大的不同? 目标不是管理技术,主要任务是管理用户和客户的IT需求 2.人员.技术.流程[重要] 3.几大模块 模块名称 干什么 备注 服务台 1.对接客户的前方,负 ...
- uniapp支付宝小程序生成分享图方案(最新)
最近公司业务开发支付宝小程序,功能涉及生成分享图的功能,开始研究实现方案. 开发过微信小程序的小伙伴应该都知道,在微信中生成分享图最常用的方案是使用第三方库Painter GitHub官方仓库地址为: ...
- .NET周刊【3月第1期 2025-03-02】
国内文章 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章 https://www.cnblogs.com/shanyou/p/18737657 2025年2月25日,.NET ...
- mysql 连接失败:message from server: "Host '192.168.xx.xxx' is not allowed to connect to this MySQL server"
前言 mysql 连接失败:message from server: "Host '192.168.xx.xxx' is not allowed to connect to this MyS ...
- 一次Java后端服务间歇性响应慢的问题排查记录
分享一个之前在公司内其它团队找到帮忙排查的一个后端服务连接超时问题,问题的表现是服务部署到线上后出现间歇性请求响应非常慢(大于10s),但是后端业务分析业务日志时却没有发现慢请求,另外由于服务容器li ...
- Delphi 禁止重复运行程序的方法
第一种方法,使用"过程调用" procedure Del; // 自定义过程 var Mutex: THandle; begin Mutex := CreateMutex(nil, ...
- 【JDBC第9章】Apache-DBUtils实现CRUD操作
第9章:Apache-DBUtils实现CRUD操作 9.1 Apache-DBUtils简介 commons-dbutils 是 Apache 组织提供的一个开源 JDBC工具类库,它是对JDBC的 ...