Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用gitpython将单个分支合并到主分支_Python_Git_Gitpython - Fatal编程技术网

如何使用gitpython将单个分支合并到主分支

如何使用gitpython将单个分支合并到主分支,python,git,gitpython,Python,Git,Gitpython,这是将单个分支合并到主分支的代码 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>

这是将单个分支合并到主分支的代码

 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'
错误:这是我遇到的错误。请帮助将单个分支合并到主分支

 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'
回溯(最近一次呼叫最后一次):
文件“Clone.py”,第51行,在
repo.git.push('--set-upstream',origin',merge)
文件“/home/igs-lt14/.local/lib/python2.7/site packages/git/cmd.py”,第545行,在
返回lambda*args,**kwargs:self.\u调用\u进程(名称,*args,**kwargs)
文件“/home/igs-lt14/.local/lib/python2.7/site packages/git/cmd.py”,第1014行,在调用过程中
返回self.execute(调用**exec_kwargs)
文件“/home/igs-lt14/.local/lib/python2.7/site packages/git/cmd.py”,执行中的第825行
raise GITCOMANDERROR(命令、状态、标准值、标准值)
git.exc.gitcomandError:Cmd('git')失败,原因是:退出代码(128)
cmdline:git push--设置上游原点更新271e9b2..6f5fe42
快进
简单| 1+
1个文件已更改,1个插入(+)
创建模式100644简单
stderr:'致命:refspec的远程部分在更新271e9b2..6f5fe42时不是有效名称
快进
简单| 1+
1个文件已更改,1个插入(+)
创建模式100644简单'

如果在命令行中执行常规git合并,您将看到:

$ git merge upstream/master
> Updating a422352..5fdff0f
使用gitpython,merge变量得到了相同的结果:
更新271e9b2..6f5fe42

不要在push命令中使用“
merge
”,而是使用默认的分支主节点:

repo.git.push('--set-upstream', 'origin', "master")
                                          ^^^^^^^^
                                 (instead of merge)

如果在命令行中执行常规git合并,您将看到:

$ git merge upstream/master
> Updating a422352..5fdff0f
使用gitpython,merge变量得到了相同的结果:
更新271e9b2..6f5fe42

不要在push命令中使用“
merge
”,而是使用默认的分支主节点:

repo.git.push('--set-upstream', 'origin', "master")
                                          ^^^^^^^^
                                 (instead of merge)