J'essaie d'utiliser python pour mon travail jenkins, ce travail télécharge et actualise une ligne dans le projet puis valide et crée une demande de traction, j'essaie de lire la documentation pour GitPython comme dur comme je peux mais mon cerveau inférieur n'est pas capable de faire aucun sens hors de lui.Comment créer une requête Pull Git dans GitPython
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]')
Après avoir commis ce changement, je suis en train de push
ce changement et créer un pull request
branch='banana-refresh'
-branch='banana-integration'
.
Je ne sais pas GitPython, mais vous * peut * le faire à partir de la ligne de commande: https://git-scm.com/docs/git-request-pull. J'imagine que GitPython est simplement un emballage autour de ça. – SwiftsNamesake