Branch deletions cause "Missing checkout SHA" emails to be sent
When a branch is deleted on a worker repo, it triggers a push event on webhooks with "checkout_sha": null, causing the backend to raise an exception.
We already handle tag deletions by looking at this null SHA; we can try to use the specified ref and look for branches to delete them the same way.
See requests#343