【转】git如何使用.gitignore文件设置忽略文件规则

git如何使用.gitignore文件设置忽略文件规则

目录
一.前言
二.讨论一下.gitignore文件规则
三.具体.gitignore文件写法示例
四.讨论一下.gitignore文件规则的生效优先级
五.其他
一.前言
我们使用git进行版本控制的过程中,会希望一些文件不要进行提交,那这个时候就可以利用一些方法达到这个目的,这篇文章讨论一下如何使用.gitignore文件来进行忽略的方法。

二.讨论一下.gitignore文件规则
先简单讨论一下常用的.gitignore文件编写规则,其实比较像正则表达式中的一些内容。

一行表示一个规则。
使用#表示注释。
使用*匹配若干字符(0个/一个/多个)。
使用?匹配一个字符。
使用[]匹配字符列表。
!表示否定(不忽略)。
/表示目录。
**匹配多级目录。
三.具体.gitignore文件写法示例
来看一些.gitignore文件规则写法示例,更多写法可以参考规则进行编写。

#.gitignore

main.exe
#表示忽略所有main.exe文件。

*.exe
#表示忽略所有.exe文件。

/*.exe
#表示忽略当前目录下的所有.exe文件。

/src/*.exe
#表示忽略当前目录下的src目录下所有.exe文件。

!/main.exe
#表示不忽略当前目录下main.exe文件。

/bin
#表示忽略当前.gitignore文件所在同级目录下的bin目录下所有文件。
#如果同级目录下bin不是目录而是文件,会忽略bin文件。

bin/
#表示忽略所有目录下的bin目录下所有文件,比如包括/bin目录下所有文件,/src/bin目录下所有文件。
#如果bin是文件名,不会忽略。

/src/**/bin
#表示忽略当前目录下的src目录下的任意目录下的bin目录下的所有文件,比如src/bin,/src/debug/bin,/src/release/bin,/src/src/release/bin目录下的所有文件。
#如果bin是文件,也会忽略。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
四.讨论一下.gitignore文件规则的生效优先级
1.当前目录下的.gitignore文件的生效优先级最高,然后是上级目录,以此类推,优先级高的规则会覆盖优先级低的规则。

2.对于同一个.gitignore文件会按行从上往下进行生效,所以如果多行规则对同一个文件都会影响,则越往下面的一行规则优先级会越高,同样优先级高的规则会覆盖优先级低的规则。

3.注意,这里说的只是git工作区的.gitignore文件的生效优先级,git忽略文件的规则还包括命令行的内容等,而且命令行优先级更高。

五.其他
1.如果文件已经在追踪中,修改.gitignore文件不会对该文件生效。

2.也可以利用其他方式设置忽略规则,比如修改.git/info/exclude文件等等,特点也不一样,感兴趣的话也可以研究一下。

欢迎讨论,欢迎指正,欢迎转载。
————————————————
版权声明:本文为CSDN博主「木马小Z」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/LEOZ_PTLS_PL/article/details/134231128

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/628728.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

转盘寿司(100%用例)C卷 (JavaPythonC++Node.jsC语言)

寿司店周年庆,正在举办优惠活动回馈新老客户。 寿司转盘上总共有n盘寿司,prices[i]是第i盘寿司的价格,如果客户选择了第i盘寿司,寿司店免费赠送客户距离,第i盘寿司最近的下一盘寿司i,前提是prices[j]< prices[i],如果没有满足条件的j,则不赠送寿司。 每个价格的寿司都…

【严重】GitLab 以其他用户身份执行 Slack 命令

漏洞描述 GitLab 是由GitLab公司开发的、基于Git的集成软件开发平台。使用 Slack 命令在 Slack 聊天环境中运行常见的 GitLab 操作。 GitLab 受影响版本中&#xff0c;由于配置Slack/Mattermost 集成时&#xff0c;未正确验证用户身份信息&#xff0c;导致攻击者可以使用其他…

深度学习基础知识整理

自动编码器 Auto-encoders是一种人工神经网络&#xff0c;用于学习未标记数据的有效编码。它由两个部分组成&#xff1a;编码器和解码器。编码器将输入数据转换为一种更紧凑的表示形式&#xff0c;而解码器则将该表示形式转换回原始数据。这种方法可以用于降维&#xff0c;去噪…

C++入门案例——通讯录管理系统 控制台项目

前言 C入门案例——通讯录管理系统 & 控制台项目 目录 前言总体概览实体类设计显示页面和退出系统 添加联系人逻辑拆解相关代码 显示联系人逻辑拆解相关代码 根据名字删除联系人逻辑拆解相关代码 根据名字查找联系人逻辑拆解相关代码 修改联系人逻辑拆解相关代码 清空所有…

如何理解单例模式----饿汉式?

饿汉式单例模式是一种单例设计模式的实现方式&#xff0c;它在类加载时就创建并初始化了单例对象&#xff0c;无需延迟加载。这种模式的优点是实现简单且线程安全&#xff0c;因为实例在类加载时就已经创建&#xff0c;不存在多线程竞争创建实例的问题。然而&#xff0c;它的缺…

AcWing.899.编辑距离

给定 n 个长度不超过 1010 的字符串以及 m 次询问&#xff0c;每次询问给出一个字符串和一个操作次数上限。 对于每次询问&#xff0c;请你求出给定的 n 个字符串中有多少个字符串可以在上限操作次数内经过操作变成询问给出的字符串。 每个对字符串进行的单个字符的插入、删除或…

C# 中,接口和抽象类的区别,分别在什么时候使用

在C#中&#xff0c;接口和抽象类都可用于创建可由子类实现和继承的规范。尽管它们有相似之处&#xff0c;但在使用场景和行为上存在显著差异。以下是你需要知道的接口和抽象类的区别以及它们各自的使用场景&#xff1a; 定义与目的&#xff1a; 接口&#xff08;Interface&…

(二)模板templates

首 Django模板层是为动态生成html服务的&#xff0c;非本文重点。前后端分离的设计更为常见&#xff0c;尽量少的涉及Django模板层内容。本文记录Django如何找到一个html文件。 模板文件 在创建一个Django项目project后&#xff0c;目录下会生成一个同名目录和manage.py。创…

鸿蒙ArkTS的起源和简介

theme: lilsnake 1、引言 Mozilla创造了JS&#xff0c;Microsoft创建了TS&#xff0c;Huawei进一步推出了ArkTS。 从最初的基础的逻辑交互能力&#xff0c;到具备类型系统的高效工程开发能力&#xff0c;再到融合声明式UI、多维状态管理等丰富的应用开发能力&#xff0c;共同…

ASP.NET Core列表增删改查

前置要求&#xff1a; 1. vueelement-plus实现前端静态页面 HelloWorld.vue <template><h2>hello界面</h2><div class"tableList"><!-- 搜索框 --><el-row :gutter"20"><el-col :span"8"><!-- 搜…

STM32 GD32 瑞萨 psoc 等单片机 无线wifi蓝牙最佳解决方案

新联鑫威一系列低功耗高性价比sdio wifi/蓝牙combo的模块CYWL6208 , CYWL6312, CYW6209等可以搭配stm32 各种型号例如以下,支持sta/ap/apsta&#xff0c;双模蓝牙的应用&#xff0c;支持rt-thread, freertos, Azure RTOS, Linux, Android系统. 稳定强&#xff0c;功耗低&#x…

Linux系统资源分析手段:CPU,内存,磁盘与网络IO的瓶颈定位

前言&#xff1a;性能分析手段的应用场景 用于优化&#xff1a; 在程序编码完成后&#xff0c;我们通常要对自己编写的工具进行功能测试与性能分析。 用于监控&#xff1a; 在观察某个系统的运行情况时&#xff0c;需要观察系统内多个中间件及组件的资源占用情况。 用于测试…

tcpdump常用参数以及wireshark密文解密

tcpdump常用参数以及wireshark密文解密 文章目录 一、tcpdump命令和常用参数二、在wireshark中协议解析 tcpdump常用参数 一、tcpdump命令和常用参数 tcpdump常用命令&#xff1a;tcpdump -i eth0 src host 11.6.224.1 and udp port 161 -s 0 -w 161.pcap &#xff08;161为sn…

C盘满了,我用什么思路清理?

20240115 上周六同事传了一个很大的虚拟机给我&#xff0c;C盘就红了 虽然是飞秋选错了存储文件的路径&#xff0c;但后来忘了&#xff0c;就开始毫无目的删除文件&#xff0c;过程中会有没有权限删除的&#xff0c;这样还是没有改善。 咨询了公司IT技术人员&#xff0c; 告…

leetcode2376. 统计特殊整数

Problem: 2376. 统计特殊整数 文章目录 题目思路Code 题目 如果一个正整数每一个数位都是 互不相同 的&#xff0c;我们称它是 特殊整数 。 给你一个 正 整数 n &#xff0c;请你返回区间 [1, n] 之间特殊整数的数目。 示例 1&#xff1a; 输入&#xff1a;n 20 输出&…

利用python将Excel文件拆分为多个CSV

目录 一、准备工作 二、拆分Excel文件为多个CSV 1、读取Excel文件&#xff1a; 2、确定要拆分的列&#xff1a; 3、创建空的字典来存储CSV文件&#xff1a; 4、循环遍历数据并根据类别拆分&#xff1a; 5、打印或返回CSV文件名字典&#xff1a; 6、保存CSV到特定目录&a…

开源的代名词「GitHub 热点速览」

当开发者谈论开源时&#xff0c;通常会想到 GitHub&#xff0c;它不仅仅是一个代码托管平台&#xff0c;更是一个汇聚了全球开发者的社交中心。过去&#xff0c;开发者发布一款软件后&#xff0c;都是在自己的小圈子里默默努力和交流&#xff0c;现在通过 GitHub 平台可以方便地…

day02_计算机常识丶第一个程序丶注释丶关键字丶标识符

计算机常识 计算机如何存储数据 计算机世界中只有二进制。那么在计算机中存储和运算的所有数据都要转为二进制。包括数字、字符、图片、声音、视频等。 进制 进制也就是进位计数制&#xff0c;是人为定义的带进位的计数方法 实例&#xff1a; // 在java 中 可以使用不同…

【机器学习】强化学习 (一)强化学习简介

一、强化学习简介 1.1 问题定义 1.2 马尔可夫决策过程 举例说明马尔可夫决策过程 例1&#xff1a; 例2&#xff1a; 执行动作的策略 强化学习的目标是让智能体通过不断尝试&#xff0c;找到最优的策略&#xff08;policy&#xff09;&#xff0c;即在每个状态下选择什么动作&am…

消息中间件RabbitMQ

1. 消息队列 1.1. MQ 的相关概念 1.1.1. 什么是MQ MQ(message queue)&#xff0c;从字面意思上看&#xff0c;本质是个队列&#xff0c;FIFO 先入先出&#xff0c;只不过队列中存放的内容是message 而已&#xff0c;还是一种跨进程的通信机制&#xff0c;用于上下游传递消息…