rework the git-diff adapter for better error messages