如何告诉git本地分支跟踪远程分支?

默认情况下,Git中的分支彼此无关。但是,当您告诉本地分支“跟踪”远程分支时,将在这两个分支之间创建连接。您的本地分支现在在远程服务器上具有一个“对应”。

为什么要设置跟踪连接?

假设您当前的本地HEAD分支名为“ dev”。而且,我们还说您已经设置了它来跟踪名为“ origin”的远程服务器上的“ dev”分支。这种关系非常重要,原因有两个:

推拉变得容易得多。您可以简单地使用速记命令“ git pull”和“ git push”-不必像“ git push origin dev”中那样考虑确切的参数。比“轻松”更重要的是,这还可以防止您犯错误!

Git现在可以通知您有关“未推动”和“未推动”的提交。让我们举个例子:

(一)如果你有2个提交本地,你有没有推到远程的是,当地分公司是“提前2个提交”及其远程副本分公司。
(二)另一方面,如果尚未下载的远程分支上有4个提交,则本地分支位于其远程对应分支的“ 4个提交后面”。

这些信息对保持最新状态有很大帮助。Git在“ git status”的输出中告诉您有关此权限的信息:

$ git status
# On branch dev
# Your branch and 'origin/dev' have diverged,
# and have 1 and 2 different commits each, respectively.
#
nothing to commit (working directory clean)

您如何跟踪远程分支?

创建跟踪连接有三种主要方案。

 当您开始在现有的远程分支上工作时

假设您的一位同事已经启动并在您的远程服务器上发布了一个分支。现在,您也希望加入并开始研究该主题。在这种情况下,只需将–track标志与“ git checkout”命令一起使用:

$ git checkout --track origin/dev
Branch dev set up to track remote branch dev from origin.
Switched to a new branch 'dev'

这将创建一个与远程分支同名的新本地分支-并直接在两者之间建立跟踪连接。

 当您发布本地分支机构时

现在让我们看一下相反的情况:您启动了一个新的本地分支,现在想第一次将其发布在远程服务器上:

$ git push -u origin dev

您可以简单地通过将-u标志与“ git push”一起使用来告诉Git跟踪新创建的远程分支。

 当您在以后的某个时间决定

如果您只是忘记了,可以随时为当前HEAD分支设置(或更改)跟踪关系:

$ git branch -u origin/dev
每日一句话科技资讯 | 20200628
Git中的detached HEAD