You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
GitCommand errors are stringifying bytes in 3.1.15 #1220
The 3.1.15 release changed at least how git.exc.GitCommandError Errors are being generated. I have tested with stderr, but am guessing the same would be true for stdout. Previously git.exc.GitCommandError.stderr was a string of the error with bytes decoded, now the error is a string with bytes stringified.
3.1.14-stderr = "\n stderr: 'error: src refspec invalid_branch does not match any\nerror: failed to push some refs to 'git@gitservice.com:project/repo.git''"
3.1.15-stderr = '\n stderr: \'b"error: src refspec invalid_branch does not match any\\nerror: failed to push some refs to \'git@gitservice.com:project/repo.git\'"\''
Steps to reproduce:
import git
exception = git.exc.CommandError(command="git rebase invalid_branch".split(), stderr=b"abc")
exception.stderr
Steps to reproduce from code
import git
path_to_repo = "my_project"
repo = git.Repo(path_to_repo)
local_branch = "invalid_branch"
remote_branch = local_branch
# Generate Error for Rebase
try:
repo.git.rebase(refspec=f"{remote_branch})"
except Exception as err:
print(err.stderr)
# Generate Error for Push
try:
repo.remotes[0].push(f"{local_branch}:{remote_branch}")
except Exception as err:
print(err.stderr)
Activity
jmcgill298 commentedon Apr 21, 2021
This was introduced by 5232c89 in #1202