这是合并单一分支到主分支的代码。
from git import Repo
repo = Repo.clone_from(URL, versionTag)
merge = repo.git.merge(versionTag)
repo.git.push('--set-upstream', 'origin', merge)
错误:这是我得到的错误.请帮助合并一个分支到主分支。
Traceback (most recent call last):
File "Clone.py", line 51, in <module>
repo.git.push('--set-upstream', 'origin', merge)
File "/home/igs-lt14/.local/lib/python2.7/site-packages/git/cmd.py", line 545, in <lambda>
return lambda *args, **kwargs: self._call_process(name, *args, **kwargs)
File "/home/igs-lt14/.local/lib/python2.7/site-packages/git/cmd.py", line 1014, in _call_process
return self.execute(call, **exec_kwargs)
File "/home/igs-lt14/.local/lib/python2.7/site-packages/git/cmd.py", line 825, in execute
raise GitCommandError(command, status, stderr_value, stdout_value)
git.exc.GitCommandError: Cmd('git') failed due to: exit code(128)
cmdline: git push --set-upstream origin Updating 271e9b2..6f5fe42
Fast-forward
simple | 1 +
1 file changed, 1 insertion(+)
create mode 100644 simple
stderr: 'fatal: remote part of refspec is not a valid name in Updating 271e9b2..6f5fe42
Fast-forward
simple | 1 +
1 file changed, 1 insertion(+)
create mode 100644 simple'
如果你在命令行中进行常规的 git 合并,你会看到。
$ git merge upstream/master
> Updating a422352..5fdff0f
在gitpython中,你的合并变量得到了同样的结果。Updating 271e9b2..6f5fe42
而不是使用"merge
"中的推送命令,使用默认的分支主。
repo.git.push('--set-upstream', 'origin', "master")
^^^^^^^^
(instead of merge)