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

解决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
*.rarhs_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管理了🎉🎉🤣。

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

相关文章:

  • Shell Linux学习笔记
  • kingbase常用SQL总结之锁等待信息
  • 「优选算法刷题」:长度最小的子数组
  • RuoYi-Cloud本地部署--详细教程
  • 如何优雅的发布一个 TypeScript 软件包?
  • 总结的太到位:python 多线程系列详解
  • 惬意上手Python —— 装饰器和内置函数
  • python 调用dll
  • docker里Java服务执行ping命令模拟流式输出
  • 代码随想录算法训练营第十三天| 239. 滑动窗口最大值 、347.前 K 个高频元素
  • 旋转花键的使用寿命与机械原理分析
  • 互联网摸鱼日报(2024-01-22)
  • CentOS 7 安装配置MySQL
  • Gold-YOLO(NeurIPS 2023)论文与代码解析
  • 多个coco数据标注文件合并
  • Kubernetes(K8S)拉取本地镜像部署Pod 实现类似函数/微服务功能(可设置参数并实时调用)
  • k8s使用ingress实现应用的灰度发布升级
  • 最新热门商用GPT4.0带MJ绘画去授权版本自定义三方接口(开心版)
  • Halcon基于形状的模板匹配inspect_shape_model
  • html中根元素以及根元素字体的含义
  • 51单片机1-6
  • vue2(Vuex)、vue3(Pinia)、react(Redux)状态管理
  • 用户画像项目背景
  • Go使用记忆化搜索的套路【以20240121力扣每日一题为例】
  • 【LeetCode】每日一题 2024_1_21 分割数组的最大值(二分)
  • bevy the book 20140118翻译(全)
  • MySQL数据库面试知识点
  • 超优秀的三维模型轻量化、格式转换、可视化部署平台!
  • 云原生全栈监控解决方案(全面详解)
  • 代码随想录二刷 | 回溯 |复原IP地址