I have the following problem...
I was trying to merge a remote branch into my local, then push the changes to the repo... Ok, I fetched the remote branch which had three commits, but one of them is not finished, so I don't want push one of these commits to the repo... when I run git log, it shows me this:
commit: A1
merge: M1
merge remote branch "remote/branch"
commit: A2 commit: A3 commit: A4
And I want remove commit A2... how can I do it? I was searching and some people says to use git rebase or git reset, but I'm not sure which one should I use... just in case, I hadn't pushed these changes
Thanks for the help
If you haven't pushed your merge commit yet (that implies A2 was not pushed yet either) you can rebase interactively:
Now delete the merge commit line. Then, reorder the commits so that A2 is the latest one done. Once that is complete, branch:
Then reset master to the previous commit:
Now you can sync up properly and the incomplete feature will sit in it's own branch until you decide to merge it in later when it's ready.
hope this helps