git 文件名大小写的坑,你踩过吗?

如果你使用 git 做项目管理,你可能会遇到一个非常棘手的问题:git 默认是不区分文件名大小写的。

这意味着如果你修改了文件名的大小写,git 会认为文件没有变化,从而导致本地和远程仓库不一致,甚至出现运行错误。

那么,你是如何发现和解决这个问题呢?有没有什么好的方法可以让我们在使用 git 时避免这个问题呢?

本文将为大家介绍一个实用的技巧:配置 git 让它能够识别文件名大小写。

这种技巧可以让我们在修改文件名大小写时,git 能够正确地跟踪文件变化,并及时地同步到远程仓库,这样就可以避免因为文件名大小写不一致而导致的各种问题

接下来,我们将通过一个实例来深入了解这个实用的技巧。

演示

首先我们来看一个项目。

这个项目有一个文件夹 Components 文件夹中有一个 avatar.vueUpload.vue 文件。

我们使用 git init 对项目进行初始化。

然后提交到本地仓库。

后来呢,我们发现文件文件夹与文件的名字并不是很合适,想给它改一改名字。

我们将文件夹 Components 与文件 Upload.vue 的首字母都改成了小写。

改成小写之后你会发现一个神奇的现象:git 对这个改动没有跟踪记录。

g这是因为 git 默认情况下是不区分大小写的,你更改了以后它还认为是大写的,它只关心文件内容是否变化,而不关心文件名是否变化。

这就会造成一系列不可预知的问题。

比如,我们之前使用的是大写,提交到了远程的 git 仓库,那么仓库记录的就是大写字母的文件。

而将来有一天我们把本地的大写改成小写之后就没有跟踪记录了,它就没有办法同步到远程,远程那边仍然是大写的,本地是小写字符。

于是在做本地开发的时候,会按照小写字母的文件来进行开发,而一部署到服务器,服务器那边还是大写字母的文件,你说出不出问题?

这种问题还不好排查,运气不好一上午都查不到问题在哪,本地好好的远程就出问题了。

配置

所以呢必须要让 git 能够识别大小写,其实做法非常简单,只需要一行配置就搞定了。

git config core.ignorecase false

这是对 git 的一个配置,默认是忽略大小写的,我们将它配置为 false 它就不在忽略了。

我们再看是不是就有跟踪记录了?那么这个时候再次提交,把新的记录上传到服务器上就没问题了。

总结

今天呢就讲这么个小东西,知识虽小,但是解决问题确不小。

没有踩过坑的人,一定要加上这个配置。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值