当前位置: 首页 > news >正文

分布式版本管理工具——git 中忽略文件的版本跟踪(初级方法及高级方法)

git工具忽略指定文件的版本跟踪

    • 一、简单方式实现
    • 二、复杂方式实现(模式匹配)
      • 1. 相关规则
      • 2. 应用案例
        • a) 忽略所有内容
        • b) 忽略所有目录(不忽略当前目录的具体文件)
        • c)忽略指定目录下的所有文件,但排除某文件
        • d)忽略指定目录下以指定字符或字符串头的文件
        • e) 只保留指定目录下以指定字符开头和结尾的文件
    • 三、结束语

在项目开发的过程中,并不是所有文件都要保存至版本库中的,比如一些日志文件、临时文件等等,因此我们就要忽略对指定文件的版本跟踪,这里就要用到我们的.gitignore文件了。

一、简单方式实现

首先在我们的仓库根目录下创建.gitignore文件,然后编辑该文件,在里面加入你要忽略的文件名字(可以是目录名或者文件名)即可。例如我要忽略我刚创建的.gitignore文件。

在这里插入图片描述

那么我只需要在.gitignore文件里面添加“.gitgnore”并保存即可。

在这里插入图片描述

再次gitstatus可以看见.gitignore文件已经被忽略了。

在这里插入图片描述

同理,如果需要忽略多个文件,那么在新的一行添加其他文件名即可,如下:

在这里插入图片描述

如果是几个或者几十个文件还好,若是几百个甚至上千多个,我们还要一个个去添加吗,很明显这种方法不太理智,这里就要用到我们多文件名匹配的方式了,也就是模式匹配文件名进行忽略。

二、复杂方式实现(模式匹配)

1. 相关规则

首先我们来了解一些模式匹配的相关规则:

  1. “#” (井号)用于注释, / 表示转义。
  2. “*” (星号)可以匹配任何字符(0或多次),“?”可以匹配任何字符(1次)。(除了 / 以外的所有字符)。
  3. “[]” (中括号)通常用于匹配一个字符列表,比如a[bcd]e可匹配abe或ace或ade。
  4. 两个"*"星号用于匹配多级目录,如a/**/b可匹配a/b、a/b/c等。
  5. / 用于分隔目录,当 / 位于开头时,表示从.gitignore文件所在目录开始匹配,而当 / 位于末尾时,只匹配目录。
  6. 使用 ! (感叹号)表示不排除某文件

2. 应用案例

a) 忽略所有内容

直接在.gitignore文件里添加"*"(星号)即可。

在这里插入图片描述

gitstatus之后可以看到都忽略了

在这里插入图片描述

b) 忽略所有目录(不忽略当前目录的具体文件)

那么我们只需在 “*”(星号)后面加上 / 即可。

在这里插入图片描述

git status之后可以看到只有test.txt文件了,而其他目录全被忽略了。

在这里插入图片描述

c)忽略指定目录下的所有文件,但排除某文件

比如除了DHT11文件之外,排除CSDN下的所有文件,可以这么写

在这里插入图片描述

d)忽略指定目录下以指定字符或字符串头的文件

例如我要忽略根目录下所有以Test字符串开头的文件:

在这里插入图片描述

可以看到所有Test开头的文件都被忽略了

在这里插入图片描述

e) 只保留指定目录下以指定字符开头和结尾的文件

例如我要排除根目录下的所有文件,只保留以te开头A结尾为文件名的所有文件。

在这里插入图片描述

可以看到只剩testA.txt文件没被排除

在这里插入图片描述

对于各种模式匹配的规则写法可以灵活多变使用,这里就不一一的介绍了。

三、结束语

好了,以上就是对于git中.gitignore文件的使用规则介绍,我是“风行男孩”,咱们有缘再见!

http://www.lryc.cn/news/512247.html

相关文章:

  • 【LangChain】Chapter4 - Question and Answer Over Documents
  • TCP/IP 协议演进中的瓶颈,权衡和突破
  • 软件测试面试八股文,查漏补缺(附文档)
  • IDEA工具使用介绍、IDEA常用设置以及如何集成Git版本控制工具
  • YOLOv10-1.1部分代码阅读笔记-transformer.py
  • 机器人革新!ModbusTCP转CCLINKIE网关揭秘
  • JWT包中的源码分析【Golang】
  • SpringBoot数据字典字段自动生成对应code和desc
  • TencentOS 2.4 final 安装mysql8.0备忘录
  • Hadoop HA安装配置(容器环境),大数据职业技能竞赛模块A平台搭建,jdk+zookeeper+hadoop HA
  • 使用javascript读取波形文件数据,并生成动态的波形图
  • 服务器系统维护与安全配置
  • 大模型Weekly 03|OpenAI o3发布;DeepSeek-V3上线即开源!
  • Spring Boot自定义注解获取当前登录用户信息
  • js创建二维空数组
  • AF3 checkpoint_blocks函数解读
  • 下载并使用CICFlowMeter提取网络流特征(Windows版本)
  • 深入了解JSON-LD:语义化网络数据的桥梁
  • 分布式 IO 模块助力冲压机械臂产线实现智能控制
  • webrtc源码编译【linux/安卓】
  • 亚矩阵云手机
  • Flink状态编程
  • 【Django篇】--动手实现路由模块化与路由反转
  • 多元统计分析练习题3
  • windows remote desktop service 远程桌面RDS授权激活
  • 6-pandas数据读取
  • 【Logback详解】
  • Flume的概念和原理
  • 初始nginx
  • vulnhub靶场 Empire LupinOne