[SOLVED]
I have an unmerged branch in my main repository, not the local one, it has 4 commits by another developer, all the codes were messed up, how can I drop all these 4 commits?
Thanks to @SLaks for your pointer, I just did git pull, then git reverts for those 4 commits, then pushed the changes to my main repository, exactly what I wanted.