git将分支推送到具有不同名称的新仓库

Dan*_*ell 10 git branch

如何将分支推送到具有分支新名称的不同仓库.

例如,我feature1在repo上有一个分支abc,我想推送回购xyz并使其成为主分支.

我尝试使用重命名远程git分支,但然后在新的repo上执行git克隆后,我收到了错误消息

git警告:远程HEAD是指不存在的ref,无法结帐

有没有办法在推送中指定我想要的目标分支名称?

13r*_*ren 19

我认为这应该有效:

git push xyz feature1:master
Run Code Online (Sandbox Code Playgroud)

如果master已经存在,你可以用它来破坏它-f/--force,或者+:

git push -f xyz  feature1:master
git push    xyz +feature1:master
Run Code Online (Sandbox Code Playgroud)

从手册页(最后的示例部分):

   git push origin +dev:master
       Update the origin repository’s master branch with the dev branch,
       allowing non-fast-forward updates. [...]
Run Code Online (Sandbox Code Playgroud)

  • 这很好用,虽然如果分支不存在,它需要使用/ refs/heads/master,例如.git push xyz feature1:refs/heads/master (2认同)