繁体   English   中英

如何在 Git 中将本地分支转换为远程分支?

[英]How to convert a local branch to a remote branch in Git?

目前我在 Git 中有一个名为“master”的远程分支和一个名为“sample”的本地分支。 现在我想让本地分支“sample”成为远程分支,而不是“master”。 有没有办法这样做?

请指教。

试试下面的。

  1. 一、推送新默认为GitHub

     git push -u origin sample
  2. 然后,在 GitHub 中,打开存储库并单击分支链接。

    单击更改默认分支按钮,然后单击 select 新的默认分支。

您现在可以删除旧的远程主机

git push origin :master

这不是分支机构的工作方式。 本地分支和远程分支是不同的集合,可以链接但不必链接。 远程分支以远程名称为前缀,例如origin/master并对应于远程本地master分支。

通常,您将拥有一个跟踪远程分支的本地分支。 例如,您的本地master分支可能正在跟踪远程origin/master分支,这意味着默认情况下您将推送到该分支并从该分支拉取。 但是这两个分支仍然是独立引用历史中的提交的实际分支。

但是,如果您有一个本地分支sample并希望将其作为“示例”发布到远程,那么您可以将其推送到远程:

git push origin sample

这会将本地sample分支推送到远程,远程创建本地分支,并将远程分支添加到您的存储库,名为origin/sample ,代表远程的本地分支。

为了使本地分支到远程分支,请使用

git push --set-upstream origin sample

您问题的措辞很难确定,但我相信您正在寻找:

git push --force origin sample:master

这不会使sample成为远程分支。 它更改了远程上的master分支,以便它现在引用本地分支sample所引用的同一提交。 请注意,这样做有些破坏性。 在执行此命令之前master正在引用的提交可能不再有任何引用,因此可能会在下一个垃圾回收周期中被删除。 始终非常小心地使用git push --force 在您更好地理解分支 model 之前,您可能希望避免执行此命令。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM