场景

之前提交SpringBoot项目时未添加或者设置不对.gitignore文件,导致target目录下的class文件

以及.idea等文件都被提交到gitlab远端仓库中了。

 

 

后面如果想再添加或者设置.gitignore文件并使之生效并删除远程仓库上的这些不需要的文件,

不能直接添加或者修改.gitignore文件,这样不会生效。

 .gitignore 只能忽略那些原来没有被追踪的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。

那么解决方法就是先把暂存区的文件删除(改变成未被追踪状态)

注意:以下方法会将远程仓库中的文件也删除,而只保留本地文件,远程仓库中文件会保持与本地缓存区文件一致。

本地删除跟踪,那么提交后远程仓库的相关的文件也会被删除,请谨慎操作

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

1、先将本地未提交的更改全部提交并推送到 远端。

然后删除本地所有的缓存。

git rm -r --cached .

2、本地添加或者修改正确的.gitignore文件,下面提供一个示例的SpringBoot项目的.gitignore文件

######################################################################
# Build Tools

.gradle
/build/
!gradle/wrapper/gradle-wrapper.jar

target/
!.mvn/wrapper/maven-wrapper.jar

######################################################################
# IDE

### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans

### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr

### JRebel ###
rebel.xml

### NetBeans ###
nbproject/private/
build/*
nbbuild/
dist/
nbdist/
.nb-gradle/

######################################################################
# Others
*.log
*.xml.versionsBackup
*.swp

!*/build/*.java
!*/build/*.html
!*/build/*.xml

3、添加本地所有要提交的文件

git add .

4、提交

git commit -m 'update .gitignore'

5、推送

git push

6、此时本地在idea中打开,忽略的文件就是黄色标识,并且被忽略掉。

gitlab服务端原有的要忽略的文件也没有了

 

 

 


 

posted on 2022-09-28 14:41  霸道流氓  阅读(441)  评论(0编辑  收藏  举报