我正在嘗試使用gitpython
將gerrit
項目的change
拖入我的本地存儲庫。這可以使用下面的命令來完成,Git使用gitpython更改gerrit項目
git pull origin refs/changes/25/225/1
這裏,refs/changes/25/225/1
是未在gerrit
提交的變化。我已將gerrit
項目克隆到目錄中。現在,我想pull
沒有提交到此目錄中的更改。下面提到的代碼是將git pull
轉換爲包含.git
文件的目錄的常用方法。
#gitPull.py
import git
repo = git.Repo('/home/user/gitRepo')
o = repo.remotes.origin
o.pull()
這裏,gitRepo
有.git
文件夾(它是克隆格里特項目)。我做了很多搜索,但沒有找到一種方法來使用gitpython
執行上述命令git pull origin refs/changes/25/225/1
。
我不是gitpython用戶,但是如果你開始與規則「從來不用拉」(被修改爲「使用拉*之後*你達到了你永遠不需要*使用它的地步「),並將操作分解爲兩個更加基本的步驟,'git fetch'和'git merge',我敢打賭你會發現那些很容易在gitpython中做。 – torek
我一直在尋找'git'中的'fetch'或'merge'的方法。發現可以使用'git.execute()'來定製任何'git'函數。那就是訣竅。可以將它用於「提取」和「合併」,或者直接使用「拉」。 – nidHi