I have a checkout copy of a remote git repository in my workstation. I have accidentally committed a change in my local and pushed to remote. Now I want to remove the last commi
If nobody has yet cloned your updated remote repo, you can:
git reset --hard HEAD~
git push --force
That will force the local and remote history to discard the latest commit.
(Check first with a git fetch that no new commits had been pushed since your incorrect commit)
If a new history isn't an option, then a git revert is more secure, and will result in a new commit canceling the previous one: you can then push that new commit.
I'd advise against pushing with --force an alternative history. Anyone who already pulled your changes will have a completely screwed history to deal with when pulling new stuff.
A far safer option is to simply do
git revert HEAD~1
git push origin master
git revert will record a new commit that cancels all of the effects of the previous one