git大小写规则造成的问题

简介: git大小写规则造成的问题

目录:


一、介绍

二、示例

三、分析

四、解决

五、忽略大小写配置之后问题

一、介绍


在git中,会有这样一种情况,有时候我们会改变某些文件夹的大小写,但是会发现提交之后去git中查看,大小写没有改变,今天来看看这个问题。


二、示例


例如我在这样一个项目中
alt
某一天,不知道啥情况,需要我把文件夹名称改一下。
alt
这个时候,提交列表是没有东西让你提交的,也没有提示报错(当然可能有的伙伴用了某些vscode插件会提示),所以你可能会接着写代码,然后提交代码
alt
这个时候,我们去git上面去看
alt
发现大小写改了没有效果?


三、分析


刚开始时候,本地和远程都是大写的。
alt
后面,你把本地改为小写的。
alt
但是!git它是不知道的,因为git在默认情况下,是忽略掉文件名大小写的,它不会认为有任何更改。


然后接下来你把本地的推送到远程,由于git并不清楚这些文件有任何的更改,所以,远程那边它仍然保持是大写,因为文件都没有动,只是动了我们新建的index.js文件,文件内引用的是小写,远程是大写
alt
这就会造成一个情况,你本地是好好的,到了远程就报错了,别人拉新代码去运行,却发现报错。都是一套代码!你可能烧到cpu了,搞不清楚为什么报错。后面才发现是路径大小写不一样,这就浪费太多时间啦。


四、解决


所以最好的做法是什么?那就是你一开始就告诉git。你不要忽略大小写,而是要保持大小写敏感,那具体怎么做呢,那做法就非常简单了,只需要输入一个命令


git config core.ignorecase false

表示忽略大小写这个配置给它禁用,禁用了过后你再来看看。
alt
禁用过后,它就能跟踪到了,这个时候提交一下。再看看远程。
alt
这个时候发现,小写的文件夹是到远程了,但是之前的那个文件夹保留下来了,那怎么解决呢?


五、忽略大小写配置之后问题


使用下面命令


git rm --cached Components -r 

命令用于把暂存区的指定的文件移除
alt
提交之后,我们再到远程看看。
alt
完事!!🍺🍺🎉🎉


相关文章
|
开发工具 git 缓存
Git忽略规则.gitignore不生效
在项目开发过程中个,一般都会添加 .gitignore 文件,规则很简单,但有时会发现,规则不生效。 原因是 .gitignore 只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。
55214 4
|
Shell 开发工具 git
git怎么处理文件夹名称大小写重命名问题
git怎么处理文件夹名称大小写重命名问题
219 0
|
6月前
|
测试技术 开发工具 git
【git 实用指南】Git提交指南:如何制定团队友好的提交规则
【git 实用指南】Git提交指南:如何制定团队友好的提交规则
285 0
|
XML 缓存 开发工具
【Git】Git忽略提交的规则(.gitignore配置总结)
【Git】Git忽略提交的规则(.gitignore配置总结)
278 0
|
缓存 开发工具 git
如何解决git忽略提交规则不生效的问题
如何解决git忽略提交规则不生效的问题
103 0
|
开发工具 git
git监听不到文件大小写变化
git监听不到文件大小写变化
78 0
git监听不到文件大小写变化
|
开发工具 git
Git:文件大小写不敏感
Git:文件大小写不敏感
100 0
|
前端开发 开发工具 git
.gitignore前端Git忽略提交的规则
.gitignore前端Git忽略提交的规则
357 0
|
Linux 开发工具 git
【Github】玩转Github系列之二——使用git时涉及的文件名大小写不敏感问题
【Github】玩转Github系列之二——使用git时涉及的文件名大小写不敏感问题
486 0
|
缓存 开发工具 git
Git .ignore 文件规则不生效
Git .ignore 文件规则不生效
174 0
Git .ignore 文件规则不生效