如何使用GitPython推送到远程仓库

时间:2017-01-02 15:35:12

标签: python git gitpython

我必须从一个存储库克隆一组项目,然后自动将其推送到远程存储库。因此我使用python和特定模块GitPython。到目前为止,我可以使用gitpython克隆项目,如下所示:

def main():
  Repo.clone_from(cloneUrl, localRepoPath)
  # Missing: Push the cloned repo to a remote repo.

如何使用GitPython将克隆的repo推送到远程仓库?

2 个答案:

答案 0 :(得分:4)

全部在the documentation

repo = Repo.clone_from(cloneUrl, localRepopath)
remote = repo.create_remote(remote_name, url=another_url)
remote.push(refspec='{}:{}'.format(local_branch, remote_branch))

另见push reference API。如果为要推送的遥控器设置跟踪分支,则可以避免使用refspec设置。

答案 1 :(得分:3)

应该像这样工作

r = Repo.clone_from(cloneUrl, localRepoPath)
r.remotes.origin.push()

如果已经设置了跟踪分支。

否则你会设置refspec:

r.remotes.origin.push(refspec='master:master')