I just did a pairing session using ScreenHero and RubyMine. I really enjoyed it and I put together a detailed article on it: Remote Pair Programming Tips Using RubyMine and Screenhero. This may be my most ever retweeted article.
What’s the best way to use git branches to easily share temporary commits?
When working by myself, I’ll often do a
git commit -m "WIP"
And then switch branches, do something else, and then switch back to the branch and then do a:
git reset --soft HEAD\^
This could work using 2 pairing developers and using a feature branch, except that when one goes to push, one will overwrite the last WIP commit:
git push origin +my-feature-branch
(Note the use of the syntax of putting a + in front of the feature branch to do a force push, rather than using the --force or --force-with-lease, from the docs: “By having the optional leading +, you can tell Git to update the ref even if it is not allowed by default (e.g., it is not a fast-forward.)”
Another option would be for each developer to have a WIP branch and to then merge each other’s changes as work progresses.
Does anybody have any feeling what might work better?
p.s. If you have any feedback on my blog article, please post here or in the blog article contents. Much appreciated!