X-Git-Url: https://git.ralfj.de/git-mirror.git/blobdiff_plain/b13f671882eb0d0e302860144103870f38f4a062..a653fb0a12320a4f300023c5dd5e5af422a19a82:/githook.py diff --git a/githook.py b/githook.py index 3d546be..fcfb392 100755 --- a/githook.py +++ b/githook.py @@ -1,4 +1,4 @@ -#!/usr/bin/python3 +#!/usr/bin/env python3 # Copyright (c) 2015, Ralf Jung # All rights reserved. # @@ -35,17 +35,20 @@ if __name__ == "__main__": # find the repository we are dealing with reponame = find_repo_by_directory(repos, os.getcwd()) if reponame is None or reponame not in repos: - raise Exception("Unknown repository.") + raise Exception("Unknown repository {}.".format(reponame)) # now sync this repository repo = repos[reponame] # parse the information we get from stdin. we trust this information. for line in sys.stdin: - (oldsha, newsha, ref) = line.split() + line = line.split() + if len(line) == 0: continue + assert len(line) == 3 + (oldsha, newsha, ref) = line repo.update_mirrors(ref, oldsha, newsha) except Exception as e: if repo is not None: - repo.mail_owner("There was a problem running the git-mirror git hook:\n\n{0}".format(traceback.format_exc())) + repo.mail_owner("There was a problem running the git-mirror git hook:\n\n{}".format(traceback.format_exc())) # do not print all the details - sys.stderr.write("We have a problem:\n{0}".format('\n'.join(traceback.format_exception_only(type(e), e)))) + sys.stderr.write("git-mirror: We have a problem:\n{}".format('\n'.join(traceback.format_exception_only(type(e), e))))