【问题标题】:Wrong revert in gitgit中的错误还原
【发布时间】:2015-11-23 00:12:53
【问题描述】:

我想恢复分支branch1 上的最后一次推送,我在branch1 时使用了这个命令:

git push -f origin HEAD^:master

而不是写git push -f origin HEAD^:branch1。结果我的主人变成了branch1。现在我想带回我的旧master。我可以这样做吗?

【问题讨论】:

    标签: git


    【解决方案1】:

    此答案假定您的本地 master 分支是最新的 origin/master

    是的,您可以再次在远程主机上强制推送本地主机:

    git push -f origin master:master
    

    您不需要明确说明您在此处推送的内容,因为 git 将假定相同名称的分支,因此您可以将其缩短为:

    git push -f origin master
    

    【讨论】:

    • 如果本地master不等于origin/master~1,这是错误的
    • 我的理解是他不小心推到了master而不是branch1,想要恢复master
    • @chelmertz 是的,我的回答假设他的本地主机在覆盖远程主机之前是最新的(我现在明白你的意思了)
    • +1 到您的最后一条评论,如果您将其添加到您的答案中,您也会获得 +1 :) 否则:您能否提供一个解决其他情况的答案,即当他的主人与 origin/master 不同步,但仍想恢复他的错误推送?
    • 我用过git push -f origin SHA1_to_old_master:master
    猜你喜欢
    • 2012-01-07
    • 1970-01-01
    • 2021-08-12
    • 1970-01-01
    • 2015-06-12
    • 2022-12-01
    • 2017-01-07
    • 2011-03-13
    • 2012-12-05
    相关资源
    最近更新 更多