美文网首页
文件名称大小写修改后,git无法检测出修改

文件名称大小写修改后,git无法检测出修改

作者: 樱yuan | 来源:发表于2018-06-25 15:09 被阅读0次

    1、问题:

    在git项目中,已push到远程的文件夹或文件,将其名称大小写修改,修改git无法检测出。

    2、原因:

    git的默认配置忽略大小写

    3、解决方案:

    (1)命令1(不推荐)

      git config core.ignorecase false
    

    使用这个命令修改后push成功,但合并到其他分支的时候出现一些问题,如下:

      error: The following untracked working tree files would be overwritten by checkout:
      省略...
      Please move or remove them before you can switch branches.
      Aborting
    

    (2)命令2

      git mv -f oldFile newFile
    

    如:

      git mv -f index.html Index.html
    

    命令具体的意思可查看链接:https://git-scm.com/docs/git-mv

    注意:移动,删除文件夹时

    1. 将文件夹的名称从旧文件夹更改为新文件夹

      git mv oldfolder newfolder
    

    2. 如果新文件夹已存在于您的存储库中,并且您想覆盖它并使用: - force

      git mv -f oldfolder newfolder
    

    使用git mv重命名之后,需将这些更改添加到索引中并提交它们。

    3. 在不区分大小写的文件系统上将文件夹foldername重命名为folderName,如Mac

    例如使用下面一行'git mv'的命令:

      git mv foldername folderName
    

    如果是在不区分大小写的文件系统,例如在Mac上并且未将其配置为区分大小写,会遇到如下误消息:

      fatal: renaming 'pages/foldername' failed: Invalid argument
    

    可以执行以下命令来使其工作:

      git mv foldername temporaryName && git mv temporaryName folderName 
      // (先把文件夹的内容移动到名称完全不一样的文件夹,再移回动新名称的文件夹)
    

    相关文章

      网友评论

          本文标题:文件名称大小写修改后,git无法检测出修改

          本文链接:https://www.haomeiwen.com/subject/nwjyyftx.html