【问题标题】:Renaming remote git branch重命名远程git分支
【发布时间】:2011-10-28 09:30:00
【问题描述】:

我有 2 个 git 分支:主分支和实验分支。

实验变好了,我想把它当大师。我想我会重命名以随机播放,但这是我得到的:

nutebook:Stuff nathan$ git remote rename master old
error: Could not rename config section 'remote.master' to 'remote.old'

我使用 GitHub 和 Git-Tower。

【问题讨论】:

    标签: git github


    【解决方案1】:

    如果您是 Mac 用户,可以使用 GitHub Mac App (https://mac.github.com/) 重命名分支。

    【讨论】:

      【解决方案2】:

      以下是重命名主分支的指南。重命名您的实验分支同样容易。

      我是这样重命名的。

      首先,在您的工作树中,将 master 本地重命名为 否则。

      git branch -m master old-dev
      

      当您在分支上时,重命名分支确实有效,所以 没有必要结帐其他东西。

      然后,在本地将维护分支(2.63-branch)重命名为 大师:

      git branch -m 2.63-branch master
      

      现在,是时候弄乱遥控器了。万一你搞砸了,你 可能要确保您有当前的备份。首先,删除 遥控器的主人:

      git push origin :master
      

      现在,给遥控器你的新主人:

      git push origin master:refs/heads/master
      

      更新:创建新分支时,refs/heads/ 前缀为 需要在远程端。如果分支已经存在(就像 master 所做的那样 上面)只需要远程端的分支名称。

      ...和你现在改名的老主人:

      git push origin old-dev:refs/heads/old-dev
      

      最后,删除维护分支的旧名称以防止 混乱:

      git push origin :2.63-branch
      

      客户端现在在拉取时将获得“新”主分支。

      参见this 站点。

      【讨论】:

      • 补充一点:当我想在 github 上重命名我的“master”时,我首先必须更改“settings”下的默认分支,然后它才能让我删除它(即git push origin :master) .
      • 你可以在本地重命名分支并将其推送到远程然后删除旧分支吗?
      • 我发现要推送的 -u 标志很好,因为它为您设置了新遥控器的上游跟踪,例如git push -u origin master(使用 git 1.7 我不需要完整的 refs/heads 前缀)
      【解决方案3】:

      我认为最简单的方法是签出实验分支,删除远程主分支,然后将本地实验分支推送为新的远程主分支。

      // delete the remote master branch by pushing null
      // (the space in front of the semicolon) in this branch
      git push origin :master
      // push local experimental to remote master
      git push origin experimental:master
      

      【讨论】:

        【解决方案4】:

        您尝试将远程存储库从“master”重命名为“old”。要重命名另一个 repo 上的分支,只需将其删除即可

        git push <remote> :<branch name>
        

        然后将其作为其他内容推送。

        【讨论】:

          【解决方案5】:

          master 是一个分支,而不是像 origin 这样的远程。如果你想让你的实验工作到你的主分支,只需将它合并到:

          git checkout master
          git merge experimental
          

          【讨论】:

            猜你喜欢
            • 2011-06-12
            • 2015-08-15
            • 2016-08-28
            • 2022-08-09
            • 2016-01-04
            相关资源
            最近更新 更多