As git user, more than once i find the need to fix something added to a comit, using the --amend parameter. It would be great to have this feature on plasticscm, because otherwise i end with
D - E - F
A - B - C - Fixes C
Marc Delorme commented
There are some situations where I like to use branches to save pending work (as shelve or git stash). I prefer this workflow from shelve or git stash because it keeps track of the parent so I can revert to the exact same state I was. Also I like being able to see all my pending work in the branch explorer.
Unfortunately, save current work in a branch give a WIP changeset which often does not contains meaningful description and valid content. I wish it does not appear in the history.
I would like to be able to amend and rewrite history for at least "my private changeset": changeset only on my local computer or pushed on the server but nobody can see except me or my approval (similar to mercurial 'phase' feature).
Anton Petrov commented
I like history immutability but sometimes I just check-in something wrong (forgot to add a couple of files) so I would like to change latest changeset of my branch.
It works okay in Git because you can amend before pushing to the server. But in Plastic SCM it should rewrite the history :(
Mikael Kalms commented
Personally, I value immutable history highly. I would appreciate an amend feature as long as it does not complicate questions like 'does my colleague have the latest changes from branch X in their current workspace' and 'what was the exact set of input files when build Y was produced'.
We find that working with per-task branches, it is not a problem to have extra commits for amends. It is when working on a single branch (usually directly on main) that amend operations would be valuable to us. Therefore, we try to use task branches as much as possible.
Hi Rober! :P
Rewriting history is one of the cool features in Git, but it is somehow counter intuitive in the commercial software development world where you would like version control history to be immutable.
That being said, sounds like a cool thing to do.
Now, is your graph correct? I mean, what D-E-F have to do here? Not sure if I'm missing something.