我认为将要重命名的目录复制到具有所需名称的新目录,并删除旧目录,然后执行git add
, git commit
和push
一切都应该起作用。但这是最好的方法吗?
基本重命名(或移动):
git mv <old name> <new name>
区分大小写的重命名 - 例如从casesensitive
到CaseSensitive
—您必须使用两个步骤:
git mv casesensitive tmp
git mv tmp CaseSensitive
… 接着是 commit 和 push 将是在 git repo 中重命名目录的最简单方法。
如果收到此错误:致命:重命名 “文件夹名称” 失败:参数无效
试试这个:
git mv foldername tempname && git mv tempname folderName
git config core.ignorecase false; git mv foldername tempname; git mv tempname folderName
1. 将文件夹的名称从旧文件夹更改为新文件夹
git mv oldfolder newfolder
2. 如果 newfolder 已存在于您的存储库中,并且您想覆盖它并使用: -force
git mv -f oldfolder newfolder
不要忘记将更改添加到索引,并在使用 git mv 重命名后提交更改。
3. 在不区分大小写的文件系统上将 foldername 重命名为 folderName
使用普通的 mv 命令(而不是 git mv)进行简单的重命名不会被识别为来自 git 的文件更改。如果您使用'git mv' 命令尝试,如以下行所示
git mv foldername folderName
如果您使用的是不区分大小写的文件系统(例如,在 Mac 上),并且未将其配置为区分大小写,则会遇到类似以下错误消息:
致命:重命名 “文件夹名” 失败:参数无效
为了使它正常工作,您可以执行以下操作:-
git mv foldername tempname && git mv tempname folderName
通过首先将文件夹重命名为一个完全不同的文件夹名称,这可以将重命名过程分开。将其重命名为不同的 foldername 之后,该文件夹最终可以重命名为新的 folderName。在那些 “git mv” 之后,请不要忘记添加并提交更改。尽管这可能不是一种漂亮的技术,但它可以很好地工作。该文件系统仍然无法识别字母大小写的变化,但是 git 可以将其重命名为新的文件夹名,这就是我们想要的:)