In my local repository I have made many changes to the code. While doing that I pulled several times, created different branches, committed many times, merged and so on. However, the good thing is that everything that I did, I did only locally. I never have pushed to the remote repository. So, in spite on all the intricate actions with the git that I have performed, I still have a very simple mental picture: (1) there is the code on the remote repository and (2) there is code that I have locally. Now, I want to clean everything up by doing the following:
- I want to see what is the difference between the code on the remote and local repositories.
- I want to pack all the changes that I have together, so that they look like coming from one commit (with one commit message). I do not want all my commit messages, that I have generated so far, to go to the remote repository.
- I might also want to split my changes in two or three parts (each one coming as a separate commit with the corresponding commit message).
Is it possible to do it with git? And, if it is the case, how can I do it?