【发布时间】:2011-10-03 01:26:13
【问题描述】:
【问题讨论】:
-
不是重复的,推送不同于提交。
标签: git
【问题讨论】:
标签: git
首先,您需要确定最后一次已知提交的修订 ID。如果你知道你需要反转一个提交,你可以使用HEAD^ 或HEAD~{1}。
git reset --hard <revision_id_of_last_known_good_commit>
git push --force
【讨论】:
因为你是唯一的用户:
git reset --hard HEAD@{1}
git push -f
git reset --hard HEAD@{1}
(基本上,返回一次提交,强制推送到 repo,然后再返回 - 如果您不关心提交,请删除最后一步)
无需对本地存储库进行任何更改,您还可以执行以下操作:
git push -f origin <sha_of_previous_commit>:master
通常,在已发布的存储库中,先使用git revert 然后再使用git push 会更安全
【讨论】:
git push -f origin 99157a1b1b27820dfba48c5e9d3c4f075670670c:master 列为“被引用最多的食谱”,但什么都没有...如何使用您的食谱?这是最简单的情况:删除master的最后一次提交。删除=从提交历史中删除。 (在您的文字中没有明显看出git revert 将从历史中脱颖而出)
git push -f之后还有第二个git reset --hard HEAD@{1}?