I’ve recently learned to use git (for my xorg adapted packages) and used it later for netsed.
In order to develop UDP in netsed, I had to try several stuff, my network programming experience in C is back to some school time, so this was really trial and errors. And here git really helps, all I had to do is create branches for each trial, so I don’t loose any tracks I’ve taken, then when I found the right way to do it, I could just merge or cherry pick from the branches (or even just copy past from gitk to my favorite editor gvim) and that was it !
Of course I can now delete the trial branches, but those were really helpful during development time.
This meant abusing of
git commit --amend,
git merge (
--squash ) and
git cherry-pick commands, but well you cannot build a clean code without effort.
I should probably give another look at
git stash which seams to fill similar needs.