Git 2.0 release notes
Is it just me or "simple semantics" is not at all simple? Compare with:    hg push -- pushes everything to "default push location"
    hg push -r . -- pushes currently checked out branch
    hg push -r foo where -- pushes foo to where