git push命令

一、新建分支执行 git push

  • 初始化一个本地仓库。

在这里插入图片描述

  • 将本地仓库上传到远程仓库。

在这里插入图片描述

  • 查看本地仓库和远程仓库的分支信息。

在这里插入图片描述

  • 在本地仓库创建一个新的分支,此时本地仓库的分支与远程仓库没有任何关系。

在这里插入图片描述

  • 在本地仓库的 feature-1 分支上做修改。

在这里插入图片描述

  • 直接执行命令 git push,报错提示:当前分支 feature-1 没有上游分支。
  • 原因是:此时本地仓库的 feature-1 分支,和远程仓库的 feature-1 分支 没有关联。

在这里插入图片描述


二、分析

  • 首先我们在远程仓库上创建 dev 分支。

在这里插入图片描述

  • 在本地仓库联网更新远程仓库的最新状态。
  • 可以看到,远程仓库的 dev 分支已经记录在本地仓库了。

在这里插入图片描述

  • 切换到 dev 分支,显示:本地仓库的 dev 分支和远程仓库的 dev 分支是关联的。

在这里插入图片描述

  • 可以看到,我们在本地仓库的 dev 分支执行 git push 是不会报错的。
  • 原因是:本地仓库的 dev 分支和远程仓库的 dev 分支是关联,执行 git push,git 自动就明白:我们是希望将本地仓库的 dev 分支推送到远程仓库的 dev 分支。

在这里插入图片描述

  • 而 feature-1 分支没有跟远程仓库的分支有关联,所以直接执行 git push 会报错。
  • 可以看到,git 提示我们使用命令:git push --set-upstream origin feature-1。
  • 这个 --set-upstream 参数,就是关联远程仓库的意思。

在这里插入图片描述

  • 我们看看不使用 --set-upstream 参数的效果。
  • 直接执行命令:git push origin feature-1,发现可以推送。
  • 而且 git branch -a可以看到,本地仓库也记录了远程仓库的 feature-1 分支:origin/feature-1。

在这里插入图片描述

在这里插入图片描述

  • 但是我们还是发现有问题:
  • 本地仓库的 feature-1 分支跟远程仓库没有关联
  • 但是本地仓库的 master 分支和 dev 分支都 能和远程仓库关联起来
  • 即, feature-1 分支没有关联上 origin/feature-1 分支。

在这里插入图片描述

  • 我们先删除远程仓库上的 feature-1 分支。

在这里插入图片描述

在这里插入图片描述

  • 可以看到,使用参数 -u ,就能让本地仓库和远程仓库的分支关联起来。

在这里插入图片描述

  • 之后,我们再实验推送到远程仓库,就不再需要设置“上游信息”(参数 -u)了。

在这里插入图片描述
在这里插入图片描述

  • 最后删除远程仓库的分支。

在这里插入图片描述


  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值