git push -u参数是什么意思?

这篇具有很好参考价值的文章主要介绍了git push -u参数是什么意思?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

背景

git push的时候,有时候会用-u参数,有时候不适用。这是为什么呢?

官方解释

-u

--set-upstream

For every branch that is up to date or successfully pushed, add upstream (tracking) reference, used by argument-less git-pull(1) and other commands. For more information, see branch.<name>.merge in git-config(1).

branch..merge
Defines, together with branch..remote, the upstream branch for the given branch. It tells git fetch/git pull which branch to merge and can also affect git push (see push.default). When in branch , it tells git fetch the default refspec to be marked for merging in FETCH_HEAD. The value is handled like the remote part of a refspec, and must match a ref which is fetched from the remote given by “branch..remote”. The merge information is used by git pull (which at first calls git fetch) to lookup the default branch for merging. Without this option, git pull defaults to merge the first refspec fetched. Specify multiple values to get an octopus merge. If you wish to setup git pull so that it merges into from another branch in the local repository, you can point branch..merge to the desired branch, and use the special setting . (a period) for branch..remote.

实战

当在gitlab上初始化一个项目的时候,通常会给你一些git提升
例如

Git 全局设置
git config --global user.name "Administrator"
git config --global user.email "ninesun@126.com"
创建一个新仓库
git clone ssh://git@k8s-22.host.com:30401/myysophia/git-flight-rules.git
cd git-flight-rules
git switch -c main
touch README.md
git add README.md
git commit -m "add README"
git push -u origin main
推送现有文件夹
cd existing_folder
git init --initial-branch=main
git remote add origin ssh://git@k8s-22.host.com:30401/myysophia/git-flight-rules.git
git add .
git commit -m "Initial commit"
git push -u origin main
推送现有的 Git 仓库
cd existing_repo
git remote rename origin old-origin
git remote add origin ssh://git@k8s-22.host.com:30401/myysophia/git-flight-rules.git
git push -u origin --all
git push -u origin --tags

-u 参数相当于是让你本地的仓库和远程仓库进行了关联。

git push -u origin --all

这代表是将本地已存在的git项目的所有分支推送到远程仓库名为origin的仓库。

git push -u origin main 只推送main分支到远程仓库

还有另外一种情况,如下
我有两个远程仓库,一个内网一个外网的。
这是提交的时候就需要很明确的知道你需要把本地的哪个分支推送到远程仓库的哪个分支。
git push -u参数是什么意思?

下面这两个push操作你应该就知道是什么意思了吧
git push -u main main

git push -u origin master

有时候你git push不带u参数后,git pull (不带参数)会报错

You asked me to pull without telling me which branch you
want to merge with, and 'branch.test.merge' in
your configuration file does not tell me, either. Please
specify which branch you want to use on the command line and
try again (e.g. 'git pull <repository> <refspec>').
See git-pull(1) for details.

If you often merge with the same branch, you may want to
use something like the following in your configuration file:

    [branch "test"]
    remote = <nickname>
    merge = <remote-ref>

    [remote "<nickname>"]
    url = <url>
    fetch = <refspec>

See git-config(1) for details.

这是因为你没有把你本地的分支和远程没有关联。要么使用git push -u 远程仓库名 本地分支名。 要么git pull的时候使用-u同样生效文章来源地址https://www.toymoban.com/news/detail-430145.html

到了这里,关于git push -u参数是什么意思?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • M330左键有时候按下没反应的解决 - 换微动

    罗技M330鼠标左键有时候按下没反应,原因是微动老了要换新的了。 1、电烙铁/锡条(最主要的是这两个,其他可以不需要,操作电烙铁时候一定要小心,不要碰到被烫到) 2、小号螺丝刀,给眼镜用的那种,用来拆鼠标的螺丝(共2个螺丝) 视频教程: https://www.bilibili.com/vi

    2024年02月09日
    浏览(55)
  • git push -u参数是什么意思?

    git push的时候,有时候会用-u参数,有时候不适用。这是为什么呢? branch..merge Defines, together with branch..remote, the upstream branch for the given branch. It tells git fetch/git pull which branch to merge and can also affect git push (see push.default). When in branch , it tells git fetch the default refspec to be marked for merg

    2024年02月01日
    浏览(36)
  • 在Android Studio导入一个项目之后,通常需要下载Gradle的相应版本,但是AS的自动下载很慢,有时候甚至会失败。会出现类似Error:connect time out等错误...

    用Android Studio导入一个项目时,用Gradle构建过程中报错误,估计是下载gradle.zip文件时访问不到,应该是被墙了,网速太慢,下载不了外网资源。错误有如下情况:1、加载过慢2、下载超时3、下载失败 解决方法如下: 1、下载对应的gradle版本 在Project的视图下,找到gradle,里面的

    2024年02月03日
    浏览(81)
  • 后端请求的时候返回的状态码有几种,代表什么意思

             2xx表示成功处理了请求,200请求已完成,202服务器接收未处理,204、205:服务器处理了但是没有任何返回,206:处理了部分get请求         3xx请求被重定向,需要进一步操作         4xx:请求码出错影响了请求,400:服务器不理解,401:要求身份验证,404:

    2024年02月12日
    浏览(34)
  • 【git报错】git push时候报错fatal: unable to access ‘http://xxxxxxxxxxxx.git/‘: Failed to connet to xxxxx

    在执行git push origin master要把代码推送到远程库的时候出现了报错:fatal: unable to access ‘http://xxxxxxxxxxxx.git/’: Failed to connet to xxxxx 先是在博客上(https://blog.csdn.net/cubejava/article/details/120631396)看到是说:一般是这是因为服务器的SSL证书没有经过第三方机构的签署,所以才报错,

    2024年02月16日
    浏览(47)
  • git push 使用 --mirror 参数复制仓库

    迁移一个 Git 仓库并且保留原有的提交记录和分支 克隆原始仓库到本地 git clone 原始仓库URL 新仓库目录 添加新的远程仓库:git remote add new-origin  新仓库URL 推送所有分支和标签到新的远程仓库: git push new-origin --mirror origin 是默认的远程仓库的名称,它通常指向你最初克隆或

    2024年02月21日
    浏览(49)
  • Git在push推送的时候报错:Donehint: not have locally. This is usually caused by another repository pushinghi

    为什么会出现这样的错误?:我是新建的项目在git上申请了一个仓库,由于第一次推送 本地和远程仓库两者代码文件不同步,因此需要先pull,进行合并然后再进行push。 解决方法: 1、先使用pull命令: 2、再使用push命令:

    2024年02月11日
    浏览(47)
  • Java 方法中参数类型后写了三个点?什么意思?

    4、两个list,一个新的,一个旧的,旧列表中可能有新列表中存在的数据,也可能存在新列表中不存在的数据(注:新旧列表中都不存在重复元素) 需要将新旧列表中数据区分成三部分:1、只存在旧列表中的2、只存在新列表中的3、新旧列表中都存在的 可以将旧列表中的元素

    2024年01月18日
    浏览(39)
  • 深度学习中epoch、batch、step、iteration等神经网络参数是什么意思?

    epoch: 表示将训练数据集中的所有样本都过一遍 (且仅过一遍)的训练过程。在一个epoch中,训练算法会按照设定的顺序将所有样本输入模型进行前向传播、计算损失、反向传播和参数更新。一个epoch通常包含多个step。 batch:一般翻译为“批次”,表示一次性输入模型的一组

    2024年02月10日
    浏览(41)
  • git中push和pull的区别是什么

    git中push和pull的区别: 1、“git push”命令是将本地库中的最新信息发送给远程库,用于将本地分支的更新,推送到远程主机; 2、“git pull”命令是从远程获取最新版本到本地库,用于从另一个存储库或本地分支获取并集成整合。 git push与git pull是一对推送/拉取分支的git命令。

    2024年02月03日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包