0


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

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

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

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

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

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

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

演示

首先我们来看一个项目。

这个项目有一个文件夹 Components 文件夹中有一个

avatar.vue

Upload.vue

文件。

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

然后提交到本地仓库。

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

我们将文件夹

Components

与文件

Upload.vue

的首字母都改成了小写。

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

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

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

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

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

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

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

配置

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

git config core.ignorecase false

这是对 git 的一个配置,默认是忽略大小写的,我们将它配置为

false

它就不在忽略了。

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

总结

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

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

文章的最后,子辰向大家重点推荐一下我们渡一的《大师课》,本文读者,大家可以来免费领取

这套课程包含

  • 事件循环
  • V8引擎原理
  • 浏览器渲染原理
  • 一线企业项目
  • Vue响应式源码

首先,向大家着重说明,课程是“绝对免费的”,拿出这个顶配课程,就是我们向大家做个品牌宣传。没有套路,真心可鉴。

课程由渡一技术总监 袁进老师 主讲:

此套课程,从V8引擎原理讲到Vue源码,均是前端骨架级内容,是最底层、最核心的部分****。

课程内含大量笔面试真题详解,其深度甚至超越部分面试官的理解,如面试中遇到课程里的内容,袁老师的讲解就是绝对的“标准答案”,对此我们愿负责到底。

就功效而言,一套《大师课》相当于500篇技术文章的价值总和。

课程所讲皆是根源性的知识,一经掌握将一通百通,会大幅增强你对其他知识的理解。对于大部分的前端从业者,此套课程至少可提升你30%以上的功力,对于想高薪就业、在职提薪的同学,此套《大师课》更是你必须掌握的“必修”课程。

添加根据下方名片引导,向助理老师领取即可。

最后,祝愿每一位为自己人生奋斗的同学,厚积薄发,前程似锦。

标签: git github 前端

本文转载自: https://blog.csdn.net/DuyiZiChen/article/details/131115419
版权归原作者 子辰Web草庐 所有, 如有侵权,请联系我们删除。

“git 文件名大小写的坑,你踩过吗?”的评论:

还没有评论