如何让git从目录中检测所有重命名的文件

时间:2019-12-07 22:47:49

标签: git github

我在git仓库中做了很多更改,同时重命名为大写。在commit&push之后,一切正常,但名称保留为小写。

好的,所以我可以将它们添加为git mv dir/dir2/file dir/dir2/File来提交(它们从本地文件夹中的大写字母开始,但是git只识别为小写字母),但是我有很多,所以我想避免这样做一个。

我想到了一些bash命令,但我目前在Windows mobaxterm上,它不能很好地工作。

所以我可以以某种方式告诉git重新检查所有目录和子目录以进行重命名并将其添加以提交吗?

谢谢

2 个答案:

答案 0 :(得分:1)

您可以禁用不区分大小写

git config core.ignorecase false

建议随后启用它。

答案 1 :(得分:0)

您有没有工作重击?甚至是git附带的Windows版本?您可以尝试一下(bash 4.0技巧):

git ls-tree -r HEAD | while read file; do new_path=$( echo "${file,,}" ); git mv "$file" temp; git mv temp "$new_path"; done

我想您应该尝试在git mv命令之前添加回显,以确保git mv命令的顺序正确。...确定时,请删除回显,它应该可以工作。

相关问题