0


git master、origin master 与 origin/master 的区别

一、说明

  • master 这个很好理解,它代表本地的某个分支名。
  • origin master 代表着两个概念,前面的 origin 代表远程名,后面的 master 代表远程分支名
  • origin/master 只代表一个概念,即远程分支名,是从远程拉取代码后在本地建立的一份拷贝(因此也有人把它叫作本地分支)。

举几个例子可能会更加清晰地说明问题:

  • 执行 git fetch origin master 时,它的意思是从名为 origin 的远程上拉取名为 master 的分支到本地分支 origin/master 中。既然是拉取代码,当然需要同时指定远程名与分支名,所以分开写。
  • 执行 git merge origin/master 时,它的意思是合并名为 origin/master 的分支到当前所在分支。既然是分支的合并,当然就与远程名没有直接的关系,所以没有出现远程名。需要指定的是被合并的分支。
  • 执行 git push origin master 时,它的意思是推送本地的 master 分支到远程 origin,涉及到远程以及分支,当然也得分开写了。
  • 还可以一次性拉取多个分支的代码:git fetch origin master stable oldstable;
  • 也还可以一次性合并多个分支的代码:git merge origin/master hotfix-2275 hotfix-2276 hotfix-2290;

二、演示

  • 首先我们在本地创建了一个 git 版本库,之后把本地版本库上传到远程仓库。上传之后,本地仓库和远程仓库的 master 分支的 commit 完全一样。在这里插入图片描述
  • 接着,远程仓库进行了一次新的提交,因而远程仓库的 master 分支指向了新的 commit。但是本地仓库的 origin/master 由于没有更新为远程仓库的 master 分支的 commit 值。
  • 所以在本地仓库,master 分支的 commit 还是和 origin/master 的 commit 相同。

在这里插入图片描述

  • 必须执行一次 git fetch命令,将本地仓库的 origin/master 副本的内容,更新为远程仓库的 master 分支的最新的 commit。
  • 注意:本地仓库的 master 分支的内容并没有更新;必须借助 git merge 命令才能更新本地仓库的 master 分支的内容。

在这里插入图片描述


总结

提示:这里对文章进行总结:

例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

标签: git github linux

本文转载自: https://blog.csdn.net/weixin_42109053/article/details/127480131
版权归原作者 滨边美波她男友 所有, 如有侵权,请联系我们删除。

“git master、origin master 与 origin/master 的区别”的评论:

还没有评论