I usually use GIT for my local versioning. The server uses perforce. Although i have a good set of small commits in git and i like it so that i can see the messages with commits. This helps in recollecting a lot of steps taken.
But then for the server, i just keep shelving the file to the same pending changelist
in the perforce. I do not revert back the files. This is the option given in perforce client.
How can i save my changes with the messages
?
Am i required to use something other than shelve ?
It sounds like you should be making multiple shelves, not updating a single existing shelf.
Alternatively, create a branch for your work, and submit each incremental change as a separate changelist. Since you're working in a separate branch, your work isn't affecting others until you integrate the work from your branch back to the parent codeline.
In general, I find that as soon as I want to track more than a single set of changes (i.e., more than a single git commit), it's time to create a branch.
Perforce has a variety of features that can be used efficiently in this case; contact your Perforce administrator at your site for assistance.