- Fail immediately if no branches are checked out.
- Rebase only if we're pushing on master (don't bother for feature
branches).
- Do a push force to Github.
Instead of running `python setup.py --version`.
That's because earlier versions of Python that don't fully support
dynamic version specifications through `pyproject.toml` may just return
`0.0.0` here.
Separating the generation of the Arch git package (on each commit to
master) from the generation of the Arch stable package (only on a new
tag) ensures that:
1. The checksum of the package isn't calculated on an older version of
the archive.
2. The stable version of the package is always exactly aligned with the
commit associated to the tag.
A fully self-contained 1.5k LoC Drone file isn't very maintainable, and
it makes it hard to reuse parts that are shared across multiple steps
(like SSH and git configuration).