我有一个本地分支主指向一个远程分支原点/regacy(哎呀,拼写错误!)

如何将远程分支重命名为原点/遗留或原点/主?


我试着:

git remote rename regacy legacy

但这给出了一个错误:

错误:不能重命名配置区段的远程。Regacy '到'remote.legacy'


当前回答

我使用这些git别名,它几乎自动完成工作:

git config --global alias.move '!git checkout master; git branch -m $1 $2; git status; git push --delete origin $1; git status; git push -u origin $2; git branch -a; exit;'

用法:git从_branch移动到_branch

如果你有默认的名称,如master, origin等,它就可以工作。 你可以根据自己的意愿进行修改,但这只是个概念。

其他回答

如果您错误地命名了一个分支并将其推到远程存储库,请按照以下步骤重命名该分支(基于本文):

重命名你的本地分支: 如果你在你想重命名的分支上: Git branch -m new-name 如果你在不同的分支上: Git branch -m old-name new-name 删除旧名称的远程分支,并推送新名称的本地分支: Git推送源:old-name new-name 重置新名称本地分支的上游分支: 切换到分支,然后: Git推送origin -u new-name

没有直接的方法,

重命名本地分支, 我现在的分支是master Git branch -m master_rename #master_rename是master的新名称 删除远程分支, Git push origin——delete master #origin是remote_name 将重命名的分支推到远程, Git推送origin master_rename

就是这样……

除了其他人列出的其他步骤,请记住:

如果你试图删除默认的分支,例如master,当你运行git push origin:<branch_name>时,你会得到这个错误

! [remote rejected] master (refused to delete current branch: refs/heads/<branch_name>) error: failed to push some refs to '<repo_name>'. [remote rejected] master (refused to delete current branch: refs/heads/<branch_name>)

a)在删除分支之前更改默认值(Github示例)

去回购吧。 点击“设置” 修改默认分支如下图所示:

b)删除[target] remote:

$ git push origin:master

重命名您的本地分支。

如果你在你想重命名的分支上:

git branch -m new-name

如果你当前停留在不同的分支上:

git branch -m old-name new-name

删除旧名称的远程分支,并推送新名称的本地分支。

停留在目标分支上,然后:

git push origin :old-name new-name

重置新名称本地分支的上游分支。

切换到目标分支,然后:

git push origin -u new-name

仅重命名远程分支:

(set -ex; old=oldname; new=newname; git push origin origin/$old:refs/heads/$new :$old)

or:

git-rr() (set -ex; old=$1; new=$2; git push origin origin/$old:refs/heads/$new :$old)

git-rr oldname newname