【问题标题】:Issue with git pull master is out of sync with origin mastergit pull master 的问题与 origin master 不同步
【发布时间】:2013-09-25 07:20:22
【问题描述】:

这些是我执行的步骤顺序:

  1. 将我在分支中的更改提交给本地 master(提交 id dc9afg2k
  2. git fetch origin master && git merge origin master
  3. git checkout master
  4. git pull(这会取消所有最近的更改)
  5. git fetch origin master && git merge origin master
  6. git reset --hard origin/master
  7. git checkout branch
  8. git blog
  9. git reset --hard dc9afg2k(提交成功)
  10. git checkout master
  11. git log(这已经回到了 2 天前)。
  12. git pullmaster 没有更新为当前的origin/master)。

【问题讨论】:

    标签: git git-branch git-pull git-fetch


    【解决方案1】:

    当远程回购收到重写历史记录的forced push (git push --force) 时,可能会发生不同步的master

    如果您在 master 上完成了自己的提交:

    • 创建一个分支(以记住当前的 master 状态)
      git 分支 old_master

    • 确保您没有任何需要保存的私人文件。

    • follow this guide

    那就是:

    git fetch origin
    git reset --hard origin/master
    git clean -f -d
    

    (您可以使用“-n”选项预览最后的清洁步骤:git clean -n -f -d


    注意git fetch origin master && git merge origin master 可能是git pull origin master:保持这两个步骤分开的好处是在合并之前查看masterorigin/master 之间的区别。
    如果你不做那个差异,那么git pull 会更简单。

    【讨论】:

      猜你喜欢
      • 2012-01-31
      • 2011-02-22
      • 2020-07-27
      • 2017-10-20
      • 2013-05-04
      • 2021-10-14
      • 2014-03-12
      • 2016-04-08
      相关资源
      最近更新 更多