Add support for git branch aliases
Branch aliases are references pointing to another references. In this
case, we only support branch references though, however using this
feature you can, define a branch as being an alias of another, thus
allowing to have two branches pointing to the same reference/commit all
the time.
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>