关于git的问题?

发布于 2022-09-12 03:51:04 字数 265 浏览 25 评论 0

场景1 (pull前)

一开始本地没有拉取远程最新的develop分支,但是远程develop分支已更新,在本地分支feature/update,使用git diff origin/develop,会出现几个版本杂糅的差异,

场景2 (pull后)

但是本地切换到develop分支后,并pull之后,再次切换到feature/update分支,使用git diff origin/develop,就不会出现几个版本的差异了

这是什么原因尼??

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

菩提树下叶撕阳。 2022-09-19 03:51:04

你大概是以为 origin 开头的分支是和远端保持一致的了?

当你 git clone 一个仓库到本地之后,除了一个默认的本地分支(默认是 master,是可以配置的),还包含远端仓库在你 clone 的那一刻的 所有分支,tag.这个时候,origin 仅仅是你远端仓库的一个别名, 比如,你指定 https://github.com/test/test 为 origin, 这时你本地的 origin/develop 的意思是,你本地 git 仓库中 你从 github.com/test/test clone/fetch 时,远端 develop 分支在你本地仓库中的一个副本.

当你 本地 git pull 或者 git fetch 之后,做的事情就是把你的 origin/develop 和 远端仓库的 develop 分支进行一次同步(只是这个同步的意思,实际上会根据你的命令参数,会选择 merge 或者 rebase 的操作).这个时候,你本地的 origin/develop 就和远端仓库一致了.但是也仅仅是这一时刻,因为其他人可能会更新远端分支.导致你本地的 origin/develop 分支再次落后.

风筝在阴天搁浅。 2022-09-19 03:51:04

我明白你的意思,你可以做个试验,在断网的时候,去执行diff origin ,会不会执行成功?这里推荐下方幽灵的答案

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文