I'm using Git for my personal projects with a remote repository hosted in assembla.com. I'm used to a simple svn-like workflow, but now I'm trying to do something that (I think) should be relatively simple but the git documentation has not helped me achieve it so far.
This is the situation. I made a bunch of changes in my local master branch, and committed them. Now I realize that my changes are not absolutely necessary and rather detrimental to performance, but may be useful/necessary in the future. So I want to revert the previous state, while somehow keeping these changes stored somewhere. Of course, git reset --hard won't do because it will erase my changes permanently.
I'm not sure this is the correct solution, but I'm thinking of making a branch with these changes, but I can't quite figure out the correct sequence of commands to do so. Note that I want to keep track of these changes in the remote repository, not just my local repository, since I work from different computers.
I'll be grateful for any ideas on how to do this, whether they involve remote branches or not.