"git fetch" 不更新 "git log" 中的提交历史

"git fetch" doesn't update commit history in "git log"

我是 git 工作流程的新手,正在学习有关“git 获取”的在线教程。以下是执行的步骤:

  1. "git pull" 从远程仓库同步文件和历史记录
  2. 同一用户执行了新提交在线
  3. "git remote show origin" 显示本地分支与远程仓库“过时”
  4. “git 获取”是为了同步元数据而不是本地文件

对于教程 --> 在“git fetch”之后,当“git log”用于查看提交历史时,它显示了最后执行的提交以及谁做了

对我来说 --> 在使用“git log”时,在“git fetch”之后,它没有显示上次执行的提交

我尝试了“git pull”,然后提交历史和本地文件都得到了更新。 我是不是做错了什么(或者)“git fetch”不应该更新日志历史记录

您需要执行git pull,或者将远程跟踪分支与本地分支合并。假设您的本地分支被命名为 local,您可以这样做:

# from local
git pull origin local

# from local
git fetch origin
git merge origin/local

只做 git fetch 的问题是它更新远程跟踪(本地)分支 origin/local,但 没有 实际上做任何事情你的 local 分支。要使用最新作品更新 local,您需要 git pull(第一个选项),它会与 origin/local 合并,或者直接与 origin/local 进行显式合并(第二个选项)。

是的,你已经与远程同步数据,但没有改变你的头提交,所以如果你想检查远程提交日志你应该使用 git log origin/master 其中 origin 是远程名称和 master 是您要显示的分支名称。
如果你想从远程更改你的提交到最新,你应该使用 git pull 而不是 git fetch.