如何从 python 重写 gitlab 中的 JSON 文件

How to rewrite JSON file in gitlab from python

我在 git 存储库中有一个 JSON 文件,然后我将其上传到 python 变量中,对该变量进行一些操作。如何使用此变量

在 gitlab 中更新 JSON
import gitlab
import json
import io

gl = gitlab.Gitlab(
                private_token='xxxxxxxxx')
gl.auth()
projects = gl.projects.list(owned=True, search='Python')
raw_content = projects[0].files.raw(file_path='8_JSON_Module/json_HW.json', ref='main')
f = io.BytesIO()
f.write(raw_content)
f.seek(0)
data = json.load(f)  # read from the file
... do some manipulations with variable data

我知道在 Python 中我们使用这个命令来更新文件,但我不知道如何在 gitlab

中更新它
json.dump(data, open('json_HW.json', 'w'))

使用文件 api 文件对象。 Reference

f = project.files.get(file_path='README.rst', ref='main')
decoded_content = f.decode()
new_content = modify_content(decoded_content) # you implement this

# update the contents and commit the changes
f.content = new_content
f.save(branch='main', commit_message='Update file')

您可以使用 json.dumps 获取新内容的字符串。

f.content = json.dumps(data)
f.save(...)