1. Problem
When I tried to revert to a certain commit which was several commits behind, I failed and showed conflicts. I was wondering why there were conflicts for the revert. I mean there definitely should be some conflicts because that's why I used git revert. It feels so weird that git revert doesn't solve the conflicts automatically.
2. the cause of the problem
Then I found out the reason was that git revert doesn't reverse to a certain commit. What it actually does is to only revert the changes in that commit. So a better way to say is that git revert reverts a commit instead of that git revert reverts to a commit.
3. Solution
The solution is simple. Just keep reverting the current commit each time until you get the certain commit. After that, we are able to git commit and push to the repo.