如何配置Git支持大小写敏感和修改文件名中大小写字母

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何配置Git支持大小写敏感和修改文件名中大小写字母相关的知识,希望对你有一定的参考价值。

参考技术A   1. 在新建代码文件时,不注意把文件名应该小小写搞错了

  2. 文件已经push到远程了

  3. 在windows下面将文件名字改为全小写

  改好后,在Git中没有任何反应,使用git status时,如果遇到下面情况,说明GIT大小写不敏感,如下:

  [rock@ROCK-PC]$ /d/WampServer/www/hexu.org/code (dev)
  $ git status
  On branch master
  Your branch is up-to-date with 'origin/master'.

  nothing to commit, working directory clean
  [ rock @ ROCK - PC ] $ / d / WampServer / www / hexu .org / code ( dev )

  $ git status

  On branch master

  Your branch is up - to - date with 'origin/master' .

  nothing to commit , working directory clean

  如何解决Git的大小不敏感问题呢? 1. 一是设置Git大小写敏感:

  $ git config core.ignorecase false
  $ git config core .ignorecase false

  2. 二是先删除文件,再添加进去:

  $ git rm <filename>; git add <filename> ; git commit -m "rename file"
  $ git rm < filename > ; git add < filename > ; git commit - m "rename file"

  由于我是与大家共用的仓库,所以我采用的方案2解决掉了。

  $ git rm code/library/BuildTag*.php; git status
  On branch dev
  Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

  deleted: code/library/BuildTagAfc.php
  deleted: code/library/BuildTagAfs.php

  rock@ROCK-PC /d/WampServer/www/hexu.org/code (dev)
  $ git add code/library/BuildTag*.php; git status
  On branch dev
  Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

  renamed: code/library/BuildTagAfc.php -> code/library/BuildTagafc.php
  renamed: code/library/BuildTagAfs.php -> code/library/BuildTagafs.php
  $ git rm code / library / BuildTag * .php ; git status

  On branch dev

  Changes to be committed :

  ( use "git reset HEAD <file>..." to unstage )

  deleted : code / library / BuildTagAfc .php

  deleted : code / library / BuildTagAfs .php

  rock @ ROCK - PC / d / WampServer / www / hexu .org / code ( dev )

  $ git add code / library / BuildTag * .php ; git status

  On branch dev

  Changes to be committed :

  ( use "git reset HEAD <file>..." to unstage )

  renamed : code / library / BuildTagAfc .php -> code / library / BuildTagafc .php

  renamed : code / library / BuildTagAfs .php -> code / library / BuildTagafs .php

git提交时支持文件名大小写的修改

在windows环境下,git提交文件时,默认对文件名大小写不敏感,若修改了文件名字的大小写,可能会导致提交时没有记录,文件名修改不成功。网上搜集了几种解决方法,现总结下:

 

1. 修改git config的配置

git config core.ignorecase false

经测试,发现当修改文件名字的大小写并提交后,git status里并没有删除文件的操作,只有新增操作。也就是git上的文件并没有直接替换,而是新增了一份。

 

2. 先删除旧文件,然后新增文件

git rm fileNames

git add newFileNames

git commit -m ‘MISC:add files‘

git push origin

经测试,此方法有效。

以上是关于如何配置Git支持大小写敏感和修改文件名中大小写字母的主要内容,如果未能解决你的问题,请参考以下文章

如何配置Git支持大小写敏感和修改文件名中大小写字母

git提交时支持文件名大小写的修改

Git -- 大小写

git修改文件夹/文件名大小写敏感问题解决

git 设置区分大小写

Git - 设置大小写敏感