In getRevision we catch all exception errors and display this error:
except Exception as e:
with redirect_stdout(sys.stderr):
print('Cannot fetch project {}/{}'.format(remoteUrl, project))
print(e)
However we may have different errors not related to a fetch issue.
Example: if the rev is not present in the revision dictionary, we raise an exception which is not a fetch issue
The error handling of this function can be improved.