git

git subtree is now in mainline git

It seems that git-subtree has been merged into the mainline git project. git-subtree is one of those really useful wrappers for manipulating git repositories if you are an integrator or don’t really like git-submodule. It certainly is a nicer alternative to git-submodule. There is less chance of the person cloning a git-subtree repository messing up the checkout because they forgot to initialise the submodules. There is also the added advantage of not needing to fiddle around scripting up the git-archive commands for exporting the source tree for a release if you use git-subtree; actually git-subtree is just plain useful.

git rerere for long lived feature branches

I turned this feature on for a few of my git repos but I had completely forgotten about it. As far as I recall the feature has been around for a few years now. It can be turned on globally by doing git config --global rerere.enabled 1 It pretty much automates the resolution of conflicts in long lived branches. I’ve been lazy recently and I have just doing merges instead rebasing, which lead me to re-discover git rerere.