Reseting remote to a certain commithtml
Assuming that your branch is called master
both here and remotely, and that your remote is called origin
you could do:git
git reset --hard <commit-hash> git push -f origin master
However, you should avoid doing this if anyone else is working with your remote repository and has pulled your changes.app
In that case, it would be better to revert the commits that you don't want, then pushing as normal.this
Update:
you've explained below that other people have pulled the changes that you've pushed,
so it's better to create a new commit that reverts all of those changes.
There's a nice explanation of your options for doing this in this answer from Jakub Narębski.
Which one is most convenient depends on how many commits you want to revert, and which method makes most sense to you.code
Since from your question it's clear that you have already used git reset --hard to reset your master branch,
you may need to start by using git reset --hard ORIG_HEAD to move your branch back to where it was before.
(As always with git reset --hard, make sure that git status is clean, that you're on the right branch
and that you're aware of git reflog as a tool to recover apparently lost commits.)
You should also check that ORIG_HEAD points to the right commit, with git show ORIG_HEAD.orm
總結:htm
若是你推送到remote的commit沒有被其餘人pull過,那麼你可使用ip
git reset --hard <commit-hash>
git push -f origin masterrem
來撤銷以前提交的commitget
可是若是有其餘人同步過你的push,那麼你能夠在本地使用revert來還原你提交的commit,而後生成一個新的commit而後再推送到遠端