Git 忽略文件配置全解析

在Git版本控制系统中,.gitignore文件扮演着至关重要的角色。它允许我们指定哪些文件或目录应该被Git忽略,即不被纳入版本控制之中。这对于避免提交敏感信息、构建产物或临时文件等非常有用。本文将详细介绍Git忽略文件的规则及设置方法。

一、.gitignore文件的基本用法

.gitignore文件通常位于Git仓库的根目录下。每一行可以指定一个忽略规则,Git会根据这些规则来决定哪些文件或目录应该被忽略。

  • 忽略单个文件:直接在.gitignore文件中写入文件名即可。
  • 忽略目录:在文件名后加上斜杠/表示忽略该目录及其所有内容。
  • 忽略特定类型的文件:使用星号*作为通配符。例如,*.log会忽略所有.log文件。
  • 忽略特定路径下的文件:在规则前加上路径。例如,/temp/*会忽略根目录下temp目录中的所有文件。

二、.gitignore文件的规则匹配优先级

  1. 精确匹配:如果.gitignore文件中存在精确匹配的文件名或目录名,则这些文件或目录会被忽略。
  2. 前缀匹配:如果规则以斜杠/开头,则表示从仓库根目录开始匹配。
  3. 目录匹配:如果规则以斜杠/结尾,则表示忽略该目录及其所有内容。
  4. 通配符匹配:使用*?[]等通配符进行匹配。
  5. 否定规则:在规则前加上!表示否定,即不忽略匹配的文件或目录。但需要注意的是,否定规则不会使已经被父目录规则忽略的文件重新被跟踪。

三、.gitignore文件的配置示例

以下是一个.gitignore文件的配置示例,用于忽略常见的构建产物、日志文件、临时文件等:

# 忽略构建产物目录
/build/
/dist/ # 忽略日志文件
*.log # 忽略操作系统特定的文件
.DS_Store
Thumbs.db # 忽略临时文件
*.tmp
*.swp # 忽略IDE配置文件
/.idea/
/.vscode/
*.iml # 忽略node_modules目录(对于Node.js项目)
/node_modules/ # 忽略package-lock.json文件(对于Node.js项目)
package-lock.json

四、如何应用.gitignore文件规则

  • 新文件:对于新创建的文件,如果它们符合.gitignore文件中的规则,则不会被Git跟踪。
  • 已跟踪文件:对于已经被Git跟踪的文件,即使它们符合.gitignore文件中的规则,也不会被自动忽略。你需要手动从Git的索引中删除这些文件(使用git rm --cached <文件>),然后提交更改。
  • 全局.gitignore文件:除了仓库级别的.gitignore文件外,你还可以配置全局.gitignore文件来忽略所有Git仓库中的某些文件。这通常通过Git配置命令来实现(例如,git config --global core.excludesfile <全局.gitignore文件路径>)。

Git 忽略文件配置全解析的更多相关文章

  1. visual studio git 忽略文件配置模板

    ## Ignore Visual Studio temporary files, build results, and## files generated by popular Visual Stud ...

  2. 前台主页功能-前台轮播图功能完成-git介绍和安装-git使用流程-git常用命令-git忽略文件

    目录 前台主页功能-前台轮播图功能完成-git介绍和安装-git使用流程-git常用命令-git忽略文件 昨日内容回顾 今日内容概要 今日内容详细 0 导出项目依赖 0 学长问题解析 1 前台主页功能 ...

  3. Git忽略文件方法【转】

    转自:http://www.cnblogs.com/shangdawei/archive/2012/09/08/2676669.html http://cwind.iteye.com/blog/166 ...

  4. git忽略文件【转】

    转自: http://cwind.iteye.com/blog/1666646 有很多文件不必使用git管理.例如Eclipse或其他IDE生成的项目文件,编译生成的各种目标或临时文件等.使用git ...

  5. 码源中国.gitignore忽略文件配置

    码源中国.gitignore忽略文件配置 ## Ignore Visual Studio temporary files, build results, and ## files generated ...

  6. 添加git 忽略文件

    在使用Git的过程中,我们喜欢有的文件比如日志,临时文件,编译的中间文件等不要提交到代码仓库,这时就要设置相应的忽略规则,来忽略这些文件的提交. Git 忽略文件提交的方法 有三种方法可以实现忽略Gi ...

  7. git 忽略文件与如何忽略已经提交的文件或文件夹

    git 忽略文件与如何忽略已经提交的文件或文件夹   使用 git提交代码的时候可能会遇到想要忽略的文件夹出现在提交列表中的情况 1,目录中右键选择git bash Here 然后输入touch .g ...

  8. eclipse设置git忽略文件

    使用eclipse开发的程序员们经常会接触版本控制软件,这里只要说下eclipse使用egit的情况下设置忽略文件. 特此说明在这里使用window->team->ignored对于git ...

  9. git忽略文件不起作用时

    开始我是直接进到仓库建立了.gitignore文件,再从仓库进入到项目add时总是会添加不需要添加的文件, 后来明白应该是在哪里提交在哪里创建.gitignore文件 git忽略文件操作步骤如下: 1 ...

  10. 在Mac上配置全局的Git忽略文件

    现在同时搞着好几个项目,在Xcode.IDEA.Eclipse之间频繁的切换,每个项目的忽略文件列表都不一样,每个项目都有一个.gitignore,甚是麻烦,今天网上拔出来一个设置全局忽略的办法,记录 ...

随机推荐

  1. jQuery.validator验证无效的可能原因

    最近用jQuery.validator做表单的前端验证,却发现验证规则都无效.最后发现以下原因会导致校验无效 1.jquery.min.js重复引用. 2.js中有bug存在. 3.<input ...

  2. zookeeper 分布式锁服务

    分布式锁服务在大家的项目中或许用的不多,因为大家都把排他放在数据库那一层来挡.当大量的行锁.表锁.事务充斥着数据库的时候.一般web应用很多的瓶颈都在数据库上,这里给大家介绍的是减轻数据库锁负担的一种 ...

  3. PHP之常见问题

    汇总在PHP开发中遇到的一些问题 1.post提交参数缺失 场景: 在前端页面发起一个post提交的时候,查看payload中的数据是正常的, 但是在接收的时候,发现只有部分数据,算了一下,包含的数据 ...

  4. Linux之buffer/cache

    buffers和cached解释 =========================================================缓存(cached)是把读取过的数据保存起来,重新读 ...

  5. python之发送邮件(smtplib)

    我们在测试完成后,都会发一份邮件也就是我们的测试报告,那么既然要自动化,是不是也可以通过python帮助我们发送邮件?当然这么强大的python可以帮助你完成这个需求 SMTP SMTP(Simple ...

  6. Mybatis【7】-- Mybatis如何知道增删改是否成功执行?

    代码直接放在Github仓库[https://github.com/Damaer/Mybatis-Learning/tree/master/mybatis-05-CURD ] 需要声明的是:此Myba ...

  7. MySQL底层概述—1.InnoDB内存结构

    大纲 1.InnoDB引擎架构 2.Buffer Pool 3.Page管理机制之Page页分类 4.Page管理机制之Page页管理 5.Change Buffer 6.Log Buffer 1.I ...

  8. C# Redis 的基本使用

    C# Redis 的基本使用 -迷恋自留地 Redis 概述 在我们日常的开发中,无不都是使用数据库来进行数据的存储,由于一般的系统任务中通常不会存在高并发的情况,所以这样看起来并没有什么问题,可是一 ...

  9. Debian 12 (bookworm) 安装方法及其国内软件源

    摘要: Debian 12 (bookworm) 已经于2023年6月份正式发布.以下为原来信息: Debian 12 (bookworm) 预计于2023年中期发布,但是目前(2023年4月)已经处 ...

  10. Docker Install on Ubuntu

    https://docs.docker.com/engine/install/ubuntu/ https://docs.docker.com/compose/install/linux/