I have to revert multiple commits (pushed) in between different commits (pushed). Actually what happened is while working on a project I always did `git pull` instead of `git pull --rebase`, so my commits went in between commits from another person and I pushed it too. Now I want to revert inbetween (pushed) commits of mine from the branch.

For example: 

```
A-B-C-D-E-F-G-H

```

I want to revert `C`, `E` and `G` without affecting the remaining commits.

Is there a way around considering I can't delete the current branch while fixing this?