.gitignore中添加了忽略规则为何还是会提示版本更新,git如何清除部分文件的版本管理

某些文件,如java编译后的/target/class目录下的文件,*.iml文件等都是不需要上传到github的,这些文件可能随时都在变化,管理版本是没有意义的。
在.gitignore文件中可以制定规则哪些文件不管理,但是,如果该文件之前已经管理了版本,再怎么制定规则也没有用的。
但是,如果之前不小心,已经上传上去了,就需要先在本地移除,再将操作push到github上,最后修改.gitignore文件规则。

在这里插入图片描述
如图,假若我不想管理clean.bat等.bat脚本文件,即使我在.gitignore中添加了*.bat,bat脚本修改后,使用git status查看版本状态,还是会看到对应文件的更新提示。

在这里插入图片描述使用 git rm -r --cached xxx 移除某些文件的版本控制
在这里插入图片描述使用 git commit -m " remove version control" 提交更新至本地库
在这里插入图片描述
使用 git push origin master 命令将本地库更新push至gitee
在这里插入图片描述更新.gitignore文件里的规则,然后不管你怎么修改bat脚本都不会再提示你add提交了,并且对应文件的颜色也从高亮白变成了瘦短灰。
在这里插入图片描述
步骤总结:

// -n:加上这个参数,执行命令时,是不会删除任何文件,而是展示此命令要删除的文件列表预览。
git rm -r -n --cached "clean.bat" 

// 执行移除命令. 
git rm -r --cached  "clean.bat"  

//提交    
git commit -m " remove version control"    

//提交到github或gitee等远程仓库
git push origin master   

猜你喜欢

转载自blog.csdn.net/qq_41885819/article/details/107492659