Git使用gitpython对gerrit项目进行更改
我正在尝试使用Git使用gitpython对gerrit项目进行更改,git,gerrit,gitpython,Git,Gerrit,Gitpython,我正在尝试使用gitpython将gerrit项目的更改拉入本地存储库。可以使用以下命令执行此操作: git pull origin refs/changes/25/225/1 此处,refs/changes/25/225/1是未在gerrit中提交的变更。我已将gerrit项目克隆到一个目录中。现在,我想拉取尚未提交到此目录的更改。下面提到的代码是将git拉入包含.git文件的目录的常用方法 #gitPull.py import git repo = git.Repo('/home/us
gitpython
将gerrit
项目的更改
拉入本地存储库。可以使用以下命令执行此操作:
git pull origin refs/changes/25/225/1
此处,refs/changes/25/225/1
是未在gerrit
中提交的变更。我已将gerrit
项目克隆到一个目录中。现在,我想拉取尚未提交到此目录的更改。下面提到的代码是将git拉入包含.git
文件的目录的常用方法
#gitPull.py
import git
repo = git.Repo('/home/user/gitRepo')
o = repo.remotes.origin
o.pull()
这里,gitRepo
有.git
文件夹(它是克隆的gerrit项目)。我进行了大量搜索,但没有找到使用gitpython
执行上述命令的方法
import git
import os, os.path
g = git.Git(os.path.expanduser("/home/user/gitRepo"))
result = g.execute(["git", "pull", "origin", "refs/changes/25/225/1"])
可以使用execute()
执行相同的操作。好吧,这很简单,只需将分支指定为:
我不是gitpython用户,但是如果您从规则“从不使用pull”(修改为“在您到达不需要使用它的点之后使用pull”)开始,并将操作分为另外两个基本步骤,git fetch
和git merge
,我敢打赌,你会发现这些在gitpython中很容易实现。我一直在寻找获取
或合并
到git
的方法。发现可以对任何自定义的git
函数使用git.execute()。这就成功了。可以将其用于获取
,然后合并
,甚至直接拉
。
import git
repo = git.Repo('/home/user/gitRepo')
o = repo.remotes.origin
o.pull('refs/changes/25/225/1')