git - `-u` 中的 `git push -u origin master` 有什么用?

标签 git

<分区>

Possible Duplicate:
What exactly does the "u" do? "git push -u origin master" vs "git push origin master"

在Github中,当你创建一个空仓库时,指令要求你执行

git push -u origin master

所以我的问题是,-u 选项有什么用?

阅读联机帮助页后,我仍然不明白。

最佳答案

git 可以将远程存储库中的特定分支设置为该特定分支的默认“上游”分支。例如,如果您克隆一个现有的存储库,默认情况下,git 会将您的 master 分支与 origin 存储库中的 master 分支相关联,即你正在克隆的那个。这意味着 git 可以提供有用的默认设置,例如能够在 master 上使用 git pull 而不必指定要从中获取和 merge 的存储库和分支.也正是这种关联让 git 产生了有用的“你的分支比 origin/master 领先 10 次提交”消息...

但是,如果您还没有从现有的存储库中克隆,但您想要设置一个新的 origin 远程代表您新创建的 GitHub 存储库,您必须手动告诉 git将您的 master 与新的 origin 存储库中的 master 相关联。 git push 的 -u 意味着“除了推送之外,还将我的主分支与我要推送的分支相关联”。您只需执行此操作一次,该关联就会记录在 .git/config 中。

关于git - `-u` 中的 `git push -u origin master` 有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7270802/

相关文章:

git - 将更改推送到 github 中的另一个分支

git - 当 Git diff 显示模式更改时,这意味着什么?

git - 在 git 和 bitbucket 中使用自己的用户名/密码

git - 获取 git 用户名以链接到个人资料

git - 在 git rebase 期间自动选择要编辑的 sha

git - 如何让 Git 在控制台窗口中正确显示 UTF-8 编码的路径名?

git - 如何在不克隆 Jenkins 的情况下监听子模块的变化

c# - Git 从不同用户的批处理文件中提取

macos - 在 Mac OS X Mavericks 上使用 git diff 时如何摆脱 ESC[ 字符?

git - git 统计数据是什么意思?