git-hook-pre-push: several improvements
git-hook-pre-push: several improvements

 - build the list of arguments to git-rev-list in a more programmatic
   way that makes it easier to extend.  Remove special-casing of the
   "nothing" value, and drop the constant.

 - instead of excluding either the commits already on the remote branch
   -or- the commits on origin, just always exclude both.

 - don't print the "Performing checks..." message unless we actually
   have something to check

 - stop ignoring the return status of the post-commit script (by having
   it in a pipeline).  Any error in that script now counts as a failure.

 - clean up the logic and output formatting.  Drop the useless ": pass"
   after good commits, and only display ':' after failing commits if
   some output actually follows.  In the case output is displayed, put a
   newline after it.

cockpit-project/cockpit,mvollmer/cockpit,cockpit-project/cockpit,mvollmer/cockpit,mvollmer/cockpit,cockpit-project/cockpit,mvollmer/cockpit,martinpitt/cockpit,martinpitt/cockpit,cockpit-project/cockpit,martinpitt/cockpit,mvollmer/cockpit,cockpit-project/cockpit,martinpitt/cockpit,martinpitt/cockpit