Ich wollte nur Yaml Diff als String mit Git bekommen
Es heißt Gitpython, also holen Sie sich Git-Informationen Mit pip eintreten
pip install gitpython
Klicken Sie hier für die Dokumentation https://pythonhosted.org/GitPython/0.3.1/reference.html
Ich könnte es so gebrauchen
diff.py
# coding: utf-8
import git
from . import PATH
"""
git diff HEAD HEAD^
Wann.Ich möchte nur den Unterschied der yaml-Datei als Zeichenkette nehmen
"""
class Diff(object):
"""KOPF und KOPF^Diff der Differenz von wird nur von Yaml subtrahiert"""
DELIMITER = "\n\n"
def __init__(self, repo_path):
self.repo = git.Repo(repo_path)
self.head = self.repo.head.commit
self.parent = self.head.parents[0]
def yaml_diff_as_patch(self):
yaml_diffs = [
unicode(d.diff) for d
in self.parent.diff(self.head,
create_patch=True)
# .Nur Dateien mit dem Namen yaml
if d.b_blob.name.endswith('.yaml')
]
return self.DELIMITER.join(yaml_diffs)
if __name__ == '__main__':
obj = Diff(PATH)
print obj.yaml_diff_as_patch()
Recommended Posts