【问题标题】:git pull says "Already up to date" after undoing a git pull撤消 git pull 后 git pull 说“已经是最新的”
【发布时间】:2013-11-20 04:25:01
【问题描述】:

我刚刚在 magento 中安装了一个新的扩展,提交并推送。它位于 github 的暂存分支上。我已经使用

将它拉到我的登台服务器上
git pull origin staging

它刚刚破坏了我的网站。我需要恢复它。我做了

git push -f origin HEAD^:staging
git reset --hard HEAD^
git push origin staging

这从我的分支中删除了扩展。但是现在当我在服务器上拉这个分支时使用

git pull origin staging

它显示“已经是最新的”。

现在如何从服务器中删除这个扩展??

【问题讨论】:

  • 我认为它被拉了.....并且代码在你的文件中......
  • 没有。我在 github.com 上的分支上看不到扩展。它已从那里删除,但它没有在之前被拉出的服务器上被删除。
  • 我认为右键单击项目并转到团队-> 重置(在底部选择最后一个单选按钮),如果您没有在项目中编写任何代码,您会这样做。 .
  • git reset --hard HEAD^ 也应该在本地删除最后一次提交,不是吗?推送之后的 oulling 通常会生成“已经是最新的”。
  • 涉及哪些存储库?您在哪个存储库上发出了哪个 git 命令? (似乎至少有两个本地存储库和一个 github 存储库。)

标签: git github git-push git-pull


【解决方案1】:

如果我理解正确你的问题,你有三个 repos

  1. GitHub 上的遥控器
  2. 本地开发
  3. 登台服务器上的本地服务器

您首先更新了所有存储库,然后重写了远程和开发中的历史记录,并试图拉上舞台。不幸的是,staging 已经有自己的历史,所以在 staging 上尝试以下操作:

git fetch
git reset --hard origin/staging

这将迫使登台历史也被重写。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-06-10
    • 2011-01-13
    • 2011-08-14
    • 2015-03-11
    • 2020-09-25
    • 2017-08-06
    • 2015-10-20
    相关资源
    最近更新 更多