我想为我的jenkins工作使用python,此工作下载并刷新项目中的一行然后提交并创建一个拉请求,我正在阅读GitPython的文档,作为尽我所能,但我的下级大脑无法从中发现任何意义。如何在GitPython中创建Git合并请求
import git
import os
import os.path as osp
path = "banana-post/infrastructure/"
repo = git.Repo.clone_from('https://github.myproject.git',
osp.join('/Users/monkeyman/PycharmProjects/projectfolder/', 'monkey-post'), branch='banana-refresh')
os.chdir(path)
latest_banana = '123456'
input_file_name = "banana.yml"
output_file_name = "banana.yml"
with open(input_file_name, 'r') as f_in, open(output_file_name, 'w') as f_out:
for line in f_in:
if line.startswith("banana_version:"):
f_out.write("banana_version: {}".format(latest_banana))
f_out.write("\n")
else:
f_out.write(line)
os.remove("deploy.yml")
os.rename("deploy1.yml", "banana.yml")
files = repo.git.diff(None, name_only=True)
for f in files.split('\n'):
repo.git.add(f)
repo.git.commit('-m', 'This an Auto banana Refresh, contact [email protected]',
author='[email protected]')
犯这种变化我想push
这一变化,并创建一个branch='banana-refresh'
到pull request
后branch='banana-integration'
。
我不知道GitPython,但你可以* *在命令行中做到这一点:https://git-scm.com/docs/git-request-pull。我想GitPython只是一个包装。 – SwiftsNamesake