While the latest checkout action does set the "safe.directory"
parameter, it doesn't appear to stick for the following "git fetch", so
call this command again.
Update the Ubuntu containers for the commit and formatting checks to
Ubuntu 20.04.
The latest version of the checkout action requires git v2.18 in order to
checkout the code as a git repo, which is required for these workflows.
With older versions of git the action will download the code as a
tarball and lack the .git directory.
All builds have been using the same cache id for ~/.cargo which
could lead us to conflict situations which is what I think we are
seeing with the commit-check job.
On a pull request, attempt to compile all commits from
the base branch to the head of the PR branch.
The job is in a separate workflow file to limit it to
pull-requests only, as the base branch is not available
on push (something to look into).