git push -u是什么意思?

juud5qan  于 2023-02-02  发布在  Git
关注(0)|答案(3)|浏览(309)

我有两个不同版本的git,在1.6.2版本中,git push没有-u选项,它只出现在1.7.x版本中。
根据文档,-u与变量相关

branch.<name>.merge

git config中。该变量描述如下:

Defines, together with branch.<name>.remote, the upstream branch 
for the given branch. It tells git fetch/git pull which branch to merge.

什么是上游分支?

eqzww0vc

eqzww0vc1#

“上游”指的是其他人将要从其中提取数据的主repo,例如你的GitHub repo。-u选项会自动为你设置上游,将你的repo链接到一个中心repo。这样,在将来,Git“知道”你想推到哪里,想从哪里提取数据,所以你可以使用git pullgit push而不需要参数。this article解释并演示了这一概念。

4si2a6ki

4si2a6ki2#

第一次推送新分支时,请用途:〉git push -u原点
之后,您只需键入一个较短的命令:〉git推送
first-time -u选项使用本地分支创建了一个持久的上游跟踪分支。

iibxawm4

iibxawm43#

这不再是最新的!

Push.default is unset; its implicit value has changed in
Git 2.0 from 'matching' to 'simple'. To squelch this message
and maintain the traditional behavior, use:

  git config --global push.default matching

To squelch this message and adopt the new behavior now, use:

  git config --global push.default simple

When push.default is set to 'matching', git will push local branches
to the remote branches that already exist with the same name.

Since Git 2.0, Git defaults to the more conservative 'simple'
behavior, which only pushes the current branch to the corresponding
remote branch that 'git pull' uses to update the current branch.

**-u选项执行以下操作:**为每个最新或成功推送的分支添加上游(跟踪)引用,用于无参数的git-pull和其他命令。因此,使用-u选项推送本地分支后,本地分支将自动链接到远程分支,您可以使用无参数的git pull。

相关问题