首页 文章

在Git存储库中,如何正确重命名目录?

提问于
浏览
425

在Git存储库中,如何正确重命名目录?我认为应该将要重命名的目录复制到具有所需名称的新目录,以及delete the old directorygit addgit commitpush 所有内容 . 但这是最好的方法吗?

10 回答

  • 749

    基本重命名(或移动):

    git mv <old name> <new name>
    

    区分大小写的重命名 - 例如 . 从 casesensitiveCaseSensitive - 你必须使用两步:

    git mv casesensitive tmp
    git mv tmp CaseSensitive
    

    More about case sensitivity in Git…

    ...然后是commit和push将是重命名git仓库中目录的最简单方法 .

  • 0

    如果您收到此错误:致命:重命名'foldername'失败:参数无效

    试试这个:

    git mv foldername tempname && git mv tempname folderName

  • -9

    1. Change a folder's name from oldfolder to newfolder

    git mv oldfolder newfolder
    

    2. If newfolder is already in your repository & you'd like to override it and use:- 力量

    git mv -f oldfolder newfolder
    

    在使用git mv重命名后,不要忘记将更改添加到索引并提交它们 .

    3. Renaming foldername to folderName on case insensitive file systems

    使用普通的mv命令(而不是git mv)进行简单的重命名将不会被识别为来自git的文件更改 . 如果您使用'git mv'命令尝试它,如下一行所示

    git mv foldername folderName
    

    如果您使用不区分大小写的文件系统,例如你在Mac上并且没有将其配置为区分大小写,您将遇到如下错误消息:

    fatal: renaming ‘foldername’ failed: Invalid argument

    以下是您可以做的工作: -

    git mv foldername tempname && git mv tempname folderName
    

    这通过首先将文件夹重命名为完全不同的foldername来拆分重命名过程 . 将其重命名为不同的foldername后,该文件夹最终可以重命名为新的folderName . 在那些'git mv'之后,再次,不要忘记添加并提交更改 . 虽然这可能不是一种漂亮的技术,但它的工作原理非常好 . 文件系统仍然无法识别字母大小写的变化,但git会将其重命名为新的foldername,这就是我们想要的全部:)

  • -3

    您可以使用文件系统重命名目录 . 然后你可以做 git rm <old directory>git add <new directory>Help page) . 然后你可以提交并推送 .

    Git会检测到内容是否相同,并且它会在历史记录中显示为重命名条目 . 您可以使用 git status 检查提交之前的情况

  • 76

    从Web应用程序我认为你不能,但你可以重命名Git Client中的所有文件夹,它会将文件移动到新重命名的文件夹中,而不是提交并推送到远程存储库 .

    I had a very similar issue: 我不得不将不同的文件夹从大写重命名为小写(如Abc - > abc),然后将其重命名为远程存储库,之后我将所有文件夹重命名为原始名称并使用小写(如abc)和它花了!

  • 37

    仅使用Tortoise或命令行选项进行重命名时,我一直收到“FAILED \ Access denied” . 它只在我关闭资源管理器窗口后从命令行选项工作 .

  • 2

    https://github.com的存储库界面中:

    转到设置 - >存储库名称 - >在区域中输入新名称 .

  • -1

    我只是重命名了目录,然后添加,提交并推送到远程 . 它工作正常

    mv git add new_dir git commit -m“<>”git push

  • 9
    git rm -rf --cached path/to/your/directories
    

    然后重新添加并提交 .

  • -1

    只需重命名该文件夹即可 . git是一个“内容跟踪器”,所以SHA1哈希是相同的,git知道,你重命名它 . 唯一改变的是树对象 .

    rm <directory>
    git add .
    git commit
    

相关问题