Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在GitHub网站上重命名分支?_Github_Branch_Rename - Fatal编程技术网

如何在GitHub网站上重命名分支?

如何在GitHub网站上重命名分支?,github,branch,rename,Github,Branch,Rename,我不知道如何运行命令行。我就是没有环境 因此,我试图重命名GitHub网站上的一个分支。默认情况下,它的名称为patch-1 可以在站点上重命名它吗?无法从Github网站重命名分支。您需要执行以下操作- 设置Git环境 以下是: 在本地和Github上重命名分支机构 git分行-m旧分行新分行#在本地重命名分行 git推送源:旧分支#删除旧分支 git push--设置上游源新分支#推送新分支,设置本地分支跟踪新的远程分支如果不想安装git,克隆repo,可以使用: 其中旧的是: POST

我不知道如何运行命令行。我就是没有环境

因此,我试图重命名GitHub网站上的一个分支。默认情况下,它的名称为
patch-1


可以在站点上重命名它吗?

无法从Github网站重命名分支。您需要执行以下操作-

设置Git环境

以下是:

在本地和Github上重命名分支机构

git分行-m旧分行新分行#在本地重命名分行

git推送源:旧分支#删除旧分支


git push--设置上游源新分支#推送新分支,设置本地分支跟踪新的远程分支

如果不想安装git,克隆repo,可以使用:

  • 其中旧的是:

    POST /repos/:owner/:repo/git/refs
    
    {
      "ref": "refs/heads/newBranchName",
      "sha": "<SHA1 of old branch>"
    }
    
这样,您就可以“重命名”(创建+删除)分支,而不必在本地使用git

并且,如下所示,使用获取这些分支SHA1:

GET /repos/:owner/:repo/branches

我认为您可以,只需使用新名称创建一个新分支,然后在github上删除旧分支


您可以看到更多详细信息。

我没有将任何代码下载到我的笔记本电脑上,只使用GitHub站点。 解决方案看起来不错,但我想添加有关默认分支的内容。
在我的例子中,重命名分支的名称不存在

  • 此操作将默认分支(具有旧名称的分支)的所有内容复制到新分支(具有新名称)。此时,您有两个具有相同代码的分支

  • 更改默认分支(使用新名称更改为新分支)


  • 如果您想要基于GUI的解决方案,请下载Git客户端“GitKraken”。它支持在UI中通过右键单击分支名称并选择“重命名[分支名称]”从2021年1月19日起,您现在可以在github.com上直接重命名分支:

    : 现在可以从web重命名任何分支,包括默认分支

    如果您一直在等待将默认分支从
    master
    重命名为
    main
    ,我们现在建议您使用此功能

    重命名分支时:

    • 以重命名分支为目标的打开拉取请求和草稿发布将自动重定目标
    • 将更新显式引用重命名分支的分支保护规则
    注意:重命名默认分支需要管理员权限,但写入权限足以重命名其他分支

    要帮助用户尽可能无缝地进行更改,请执行以下操作:

    • 我们将在存储库主页上向贡献者、维护者和管理员显示一条通知,并说明如何更新其本地存储库
    • 将重定向到旧分支的Web请求
    • RESTAPI调用将返回“永久移动”HTTP响应
    • 将向推送到旧分支的Git命令行用户显示一条信息性消息
    这是GitHub为支持希望重命名其默认分支的项目和维护人员所做的众多更改之一

    除非维护人员明确地进行更改,否则分支名称不会更改,但是,这种新的重命名功能将显著减少对希望更改分支名称的项目的中断

    要了解有关我们所做更改的更多信息,请参阅

    要了解更多信息,请参阅



    不,不是真的。此外,Github还具有其他功能,例如在没有命令行或图形VCS环境的情况下合并冲突。只需使用不同的名称将其重新推上,并删除原始名称?我曾想过这样做,但我在这里问过,我们似乎无法真正删除分支:自2021年1月以来,这项功能得到了官方支持。看,我有GitBash,我正在尝试使用它,有可能用Bash实现吗?第二个链接的linkrot被否决了。特别是当它是第三方网站时,请包括所有步骤。固定和添加步骤是什么?旧分支名称?无法复制master,表示
    404未找到
    :@Nakilon是的,旧分支的SHA1:
    git rev parse
    @Nakilon您需要经过身份验证才能成功发布此帖子。无身份验证意味着404(“未找到”)。请参见OP希望将分支重命名为“从网站”。API的使用远远超出了这一要求。感谢您提供的详细信息!在步骤3中,将默认分支更改回主分支不是更好吗?还是我遗漏了什么?@edjroot-这取决于你重命名的分支。例如,如果要将
    master
    分支重命名为
    main
    ,则需要将默认分支更改为
    main
    。诚然,这个问题没有被问到,但对于阅读有关重命名和更改分支的文章的人来说,这是一个有用的细节。这不是真正的问题,是吗?@Kutzi it有点像tho。您可以从要更改的分支创建一个新分支。例如,如果,分支机构有一个开放的PR,您希望保留该PR上留下的讨论。您现在可以在开放的PR中更改目标分支机构。因此我认为这是一个选项。并且仍然会导致任何github问题/评论等中指向分支机构代码的每个链接被破坏,因此不,这不是答案。这是一个解决办法,但真正的答案是“你不能,github不支持重命名分支,但你可以(然后这个答案)取而代之”。
    GET /repos/:owner/:repo/branches