解决Git添加.gitignore文件后不生效的问题

1. 问题描述

在这里插入图片描述

如上图所示,在已存在.gitignore文件且已经提交过的Git管理的项目中,其中.class.jar文件以及.idea目录内的内容全部都还是被Git管理了,可见.gitignore文件并没有生效。

2. 原因发现

.gitignore文件只能作用于 Untracked Files,也就是那些从来没有被Git管理过的文件,如果某些文件已经被纳入了版本管理中,则新增或者修改.gitignore文件是无效的。

3. 解决方案

为了保险起见,建议先在本地仓库进行一次git pull,目的是与远程仓库同步,然后再在本地新建并切换到新分支,我命名为hotfix

git pull origin master
git checkout -b hotfix

第一步:先将暂存区的文件删除(即全部变为未被追踪状态)

git rm -r --cache .

在这里插入图片描述
如上图所示,执行完第一步的bash代码以后在IDEA中可以发现,所有文件都变为了红色(未被追踪状态)。

第二步:添加或者修改正确的.gitignore文件
在与.git文件的同级目录下添加.gitignore文件。

# Compiled class file
*.class

# Log file
*.log

# BlueJ files
*.ctxt

# Mobile Tools for Java (J2ME)
.mtj.tmp/

# Package Files #
*.jar
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar

hs_err_pid*

.classpath
.project
.settings
target
.idea
*.iml

第三步:再将本地所有文件添加至暂存区

git add .

第四步:切换到master分支,再将hotfix分支的内容合并到master分支

git checkout master
git merge hotfix

第五步:推送至远程仓库

git push origin master

推送完以后,通过git status指令查看本地库的状态,发现本地库很干净。再到Github仓库中查看文件,发现以前推送的.class.jar文件都被删除了,在本地修改文件时,.class.jar文件以及.idea目录内的内容也都不再被Git管理了🎉🎉🤣。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Kafka 问题排查

订单宽表数据不同步 事情的起因是专员在 ze app 上查不到订单了,而订单数据是从 mysql 的 order_search_info 查询的,order_search_info 表的数据是从 oracel 的 BZ_ORDER_INFO 表同步过来的,查不到说明同步有问题 首先重启,同步…

linux性能优化-磁盘I_O优化

1.文件系统 1.1.文件系统的工作原理 文件系统是在磁盘的基础上,提供了一个用来管理文件的树状结构。 接下来我们就看看Linux 文件系统的工作原理。 1.1.1索引节点和目录项 在 Linux 中一切皆文件 ,文件系统,本身是对存储设备上的文件,进行组织管理的…

提升认知,推荐15个面向开发者的中文播客

前言 对于科技从业者而言,无论是自学成才的程序员,还是行业资深人士,终身学习是很有必要的,尤其是在这样一个技术快速迭代更新的时代。 作为一个摆脱了时间和空间限制的资讯分享平台,播客(Podcast&#x…

Parasoft C++Test安装指南_含独立版和插件版

文章目录 前言一、Windows环境下1. 安装独立版CTest2. 安装插件版CTest 二、Linux环境下1. 安装独立版CTest 总结 前言 CTest是Parasoft公司出品的一款可以针对C/C源代码进行静态分析、单元测试、集成测试的测试工具,在C/C白盒测试领域被广泛使用。本篇文章主要讲解…

黑马苍穹外卖学习Day10

文章目录 Spring Task介绍cron表达式入门案例 订单状态定时处理需求分析代码开发功能测试 WebSocket介绍入门案例 来单提醒需求分析代码开发 客户催单需求分析代码开发 Spring Task 介绍 cron表达式 入门案例 订单状态定时处理 需求分析 代码开发 新建一个task包里面编写代码…

140基于matlab的求解转子系统前三个临界转速和主振型的传递矩阵法转子系统的不平衡响应

基于matlab的求解转子系统前三个临界转速和主振型的传递矩阵法转子系统的不平衡响应。参数涉及等截面参数、材料参数、轮盘参数。程序已调通,可直接运行。 140 matlab临界转速及振型 (xiaohongshu.com)

Vue开发者工具是什么?有哪些?

Vue开发者工具是什么? Vue开发者工具是用于Vue.js开发的浏览器扩展,提供了许多有用的功能和工具,帮助开发者更轻松地开发和调试Vue.js应用程序。 Vue开发者工具的功能特点有哪些? 1、组件树视图:Vue开发者工具可以显…

【C++初阶】第二站:类与对象(上) -- 下部分

前言: 本章知识点: 类对象模型、 this 指针 专栏: C初阶 目录 类对象模型 如何计算类对象的大小 类对象的存储方式猜测 结构体内存对齐规则 this指针 this指针的引出 this指针的特性 C语言和C实现Stack的对比 C语言实现 C实现 类对象模型 …

JavaEE:多线程(2):线程状态,线程安全

目录 线程状态 线程安全 线程不安全 加锁 互斥性 可重入 死锁 死锁的解决方法 Java标准库中线程安全类 内存可见性引起的线程安全问题 等待和通知机制 线程饿死 wait notify 线程状态 就绪:线程随时可以去CPU上执行,也包含在CPU上执行的…

SpringBoot 自定义Banner

SpringBoot自定义Banner SpringBoot项目启动的时候会输出一个Spring的图标。 思考🤔 它是在哪个环节的时候输出的呢?是否可以自定义图标呢? 源码分析 通常我们SpringBoot项目是通过SpringBoot.run(Appcation.class)启动的。 run() public Co…

【算法竞赛C++STL基础】栈,链表,队列,优先队列,map,set以及迭代器的用法

文章目录 1,前知——模板函数的实现2, hash 表1,定义2,ASCII码表3,咉射关系 3,迭代器4,STL关系1,stl 的基础关系2,stl 的分类1,相关分类2,相关简介顺序容器关联容器适配容器 3. STL 的相关函数的学习3.1 STL函数中都含…

buctoj——2024寒假集训 进阶训练赛 (五)

问题 A: 约瑟夫问题 题目描述 N个人围成一圈,从第一个人开始报数,数到M的人出圈;再由下一个人开始报数,数到M的人出圈;……输出依次出圈的人的编号。N,M由键盘输入。 输入 一行,包含两个正整数…

Linux 入门命令大全汇总 + Linux 集锦大全 【20240122】

文章目录 Linux 入门命令大全汇总Linux 集锦大全更多信息 Linux 入门命令大全汇总 别有一番风趣的alias 刚刚好合适的 apropos 命令 迷你计算器 bc 可看黄道吉日的 cal 全文可查看: Linux入门命令大全全文 Linux 集锦大全 linux终端中最漂亮的几款字体介绍及…

golang学习笔记——http.Handle和http.HandleFunc的区别与type func巧妙运用

文章目录 http.Handle和http.HandleFunc的区别http.Handle分析type func巧妙运用 http.HandleFunc分析总结参考资料 http.Handle和http.HandleFunc的区别 http.Handle和http.HandleFunc的区别体现了Go语言接口的巧妙运用 下面代码启动了一个 http 服务器,监听 808…

深入理解C语言(2):字符、字符串与内存函数

文章主题:字符、字符串与内存函数🌏所属专栏:深入理解C语言📔作者简介:更新有关深入理解C语言知识的博主一枚,记录分享自己对C语言的深入解读。😆个人主页:[₽]的个人主页&#x1f3…

jdk17新特性——Switch表达式增强

目录 一、Switch表达式增强示例一1.1、传统的方式 case中变量赋值示例1.2、jdk17 case中变量赋值示例 二、Switch表达式增强示例二2.1、传统的方式 case中值匹配多个示例2.2、jdk17 case中值匹配多个示例 三、Switch表达式增强示例三3.1、传统的方式 case中需要多行业务代码示例…

React-Native项目矢量图标库(react-native-vector-icons)

系列文章目录 React-Native环境搭建(IOS)React-Native项目 — 关于IOS知识储备React-Native项目工程搭建(开发模板搭建)React-Native项目矢量图标库(react-native-vector-icons) 目录 系列文章目录前言一、…

斐波那契查找

斐波那契查找 概述步骤代码示例输出结果 概述 斐波那契查找是一种基于斐波那契数列的查找算法,用于在有序数组中查找目标元素的位置。与二分查找类似,斐波那契查找也是一种分治算法,它通过比较目标值与数组的中间元素来确定下一步的查找范围…

C++版QT:鼠标事件

鼠标常用的事件可以说有一下几种&#xff1a;鼠标按下、鼠标移动、鼠标移动、鼠标双击和鼠标滚轮事件。 当你想使用他们&#xff0c;需要包含头文件&#xff1a;#include <QMouseEvent> 需要对鼠标事件进行处理时&#xff0c;通常要重新实现以下几个鼠标事件处理函数&a…

设备对象(DEVICE_OBJECT)

设备对象(DEVICE_OBJECT) 每个驱动程序会创建一个或多个设备对象&#xff0c;用DEVICE_OBJECT数据结构表示。每个设备对象都会有一个指针指向下一个设备对象&#xff0c;因此就形成一个设备链。设备对象链的第一个设备是由DRIVER_OBJECT结构体中指明的。设备对象保存设…