我希望我的git repo处于特定提交状态。一旦repo处于状态,我希望能够推送到Github,使远程处于该状态。我知道我可以调用git checkout <commit hash>
并且我的本地仓库将处于给定提交时的状态,但它不会让你推动。
我猜我应该对git checkout
做些什么,但我不知道该怎么办。
感谢您对这个简单问题的任何帮助:)
答案 0 :(得分:3)
你需要强行推动,因为你将失去历史。
git push -f origin master
这将强制推动您的更改。如果您要撤消某些内容,可能需要考虑git revert
,因为它可以让您保留历史记录。
答案 1 :(得分:2)
使用git reset --hard <commit>
将回购重置为特定提交。
这将使您失去工作目录更改以及commit
之后的任何提交。您仍然可以从git reflog
返回较新的提交,然后在这些提交中使用git reset
。
此外,如果您已经推送了其他提交,则必须避免在没有它们的情况下推送到遥控器。