git 使用Gerrit API获取更改的文件内容

ar5n3qh5  于 2023-03-11  发布在  Git
关注(0)|答案(2)|浏览(301)

我正在使用Gerrit API(/changes/64/revisions/current/files/my_file/content)来访问文件内容,有没有办法获取这个文件的“基本”内容,即更改所基于的内容?
我试过用
/更改/64/修订/0/文件/我的文件/内容
但没什么进展,有什么想法吗

whhtz7ly

whhtz7ly1#

也许可以使用get-diff API,从那里可以导出原始文件内容

gab6jxml

gab6jxml2#

Gerrit应该得到本地人的支持...
但这里是如何在python中欺骗它返回任意给定{tag,分支,commit}处的任意文件:

# pip install python-gerrit-api
from gerrit import GerritClient
import base64

client = GerritClient(
    base_url=url,
    username=username,
    password=password
)
# `project` is project name
# `version` is tag/branch/commit
# `path` is path to a file, relative to project root
b64 = client.gitiles.gerrit.get(client.gitiles.endpoint+ f"/{project}/+/{version}/{path}", params={"format": "TEXT"})
content = base64.b64decode(b64)

相关问题