Motivation:
PyGithub ist eine großartige Bibliothek, die jedoch am Anfang möglicherweise nicht intuitiv zu verwenden ist. Nicht jeder ist ein Github-API-Experte, daher versuche ich, einige funktionierende Beispiele (Rezepte) bereitzustellen, die Ihnen hoffentlich den Einstieg erleichtern.
Das Skelett wurde hier eingerichtet und die Beispieldokumente sind bereits wie gewohnt auf readthedocs live:
https://pygithub.readthedocs.io/en/latest/examples.html
Beachten Sie, dass die Liste erweitert wird und jede PR, um weitere Beispiele hinzuzufügen, ist sehr willkommen 😄
Wenn Sie Beispiele sehen möchten, die hier nicht behandelt werden, hinterlassen Sie einfach einen Kommentar.
@sfdye hat bitte das Login-Beispiel gelesen ^^_
Ich habe gerade mit PyGithub angefangen und einige Beispiele gefunden , also wurde offensichtlich etwas Arbeit geleistet - danke Leute!
Aber ich sehe keine Beispiele dafür, wie man auf Ereignisse hört, zB pushevent und pullrequestevent . Könnten Beispiele dafür hinzugefügt werden?
Danke, @LeviMatus!
Dieses Problem wurde automatisch als veraltet markiert, da es in letzter Zeit keine Aktivität hatte. Es wird geschlossen, wenn keine weitere Aktivität stattfindet. Vielen Dank für Ihre Beiträge.
das ist nicht altbacken
Ich schreibe jetzt Organisationsbeispiele
Dieses Problem wurde automatisch als veraltet markiert, da es in letzter Zeit keine Aktivität hatte. Es wird geschlossen, wenn keine weitere Aktivität stattfindet. Vielen Dank für Ihre Beiträge.
Ich bin neu bei PyGithub SDK und versuche, die folgenden Vorgänge auszuführen. Es ist jedoch schwierig, Dokumente durchzugehen, um die Verwendung zu kennen.
Befehlszeilen-Äquivalent:
git checkout <<branch>> and then get file content
Problem:
Ich kann mit diesem SDK Dateiinhalte vom Master-Zweig abrufen, aber nicht von einem bestimmten Zweig
Befehlszeilen-Äquivalent:
git tag -v <<tag_id>>
Ich sehe hier die Dokumente https://pygithub.readthedocs.io/en/latest/examples/Repository.html#update-a-file-in-the-repository
git config user.email "[email protected]"
git config user.name "cicd"
git commit --amend --reset-author --no-edit
git pull --no-edit
git add $FILE_NAME
git commit -m "updating $FILE_NAME"
git pull --no-edit && git push origin
Ich versuche auch, die Methode / API dieses SDK zu finden, um dies zu tun, aber wenn jemand sie bereit hat, helfen Sie bitte dabei.
Dieses Problem wurde automatisch als veraltet markiert, da es in letzter Zeit keine Aktivität hatte. Es wird geschlossen, wenn keine weitere Aktivität stattfindet. Vielen Dank für Ihre Beiträge.
Hallo, ich bin ein relativ neuer Entwickler und das hilft sehr. Plant jemand Beispiele für die Github-App? Danke!
Ich bin neu bei PyGithub SDK und versuche, die folgenden Vorgänge auszuführen. Es ist jedoch schwierig, Dokumente durchzugehen, um die Verwendung zu kennen.
- Holen Sie sich einen Dateiinhalt von einem bestimmten Zweig
Befehlszeilen-Äquivalent:
git checkout <<branch>> and then get file content
Problem:
Ich kann mit diesem SDK Dateiinhalte vom Master-Zweig abrufen, aber nicht von einem bestimmten Zweig
- Repo-Tags und ihre Details
Befehlszeilen-Äquivalent:
git tag -v <<tag_id>>
- Aktualisieren Sie diese Datei
Ich sehe hier die Dokumente
https://pygithub.readthedocs.io/en/latest/examples/Repository.html#update-a-file-in-the-repository
- Benutzerdetails für Commit aktualisieren
git config user.email "[email protected]" git config user.name "cicd" git commit --amend --reset-author --no-edit
- Git zieht diesen Branch vor dem Commit, da eine andere Automatisierung möglicherweise eine andere Datei festgeschrieben hat.
- git-Commit im Branch
git pull --no-edit git add $FILE_NAME git commit -m "updating $FILE_NAME" git pull --no-edit && git push origin
Ich versuche auch, die Methode / API dieses SDK zu finden, um dies zu tun, aber wenn jemand sie bereit hat, helfen Sie bitte dabei.
Hallo! Ich versuche auch, den Inhalt eines bestimmten Zweigs zu erhalten. Hast du es verstanden? Danke!
@estagumor Wenn Sie diese Antwort noch benötigen, ist der Schlüssel der Parameter ref in der Funktion get_contents
. Die Vorgabe ist "master". Hier ist ein Beispiel zum Abrufen des Inhalts des "0.6.X"-Zweigs des scikit-learn-Repositorys.
from github import Github
g = Github("USERNAME", "PASSWORD")
repo = g.get_repo("scikit-learn/scikit-learn")
repo.get_contents("", ref = "0.6.X")
@sfdye Ich habe gerade angefangen, mit PyGithub zu arbeiten und es funktioniert großartig. Aber selbst wenn ich mit der Git-API vertraut bin, wäre es großartig, wenn Sie ein funktionierendes Beispiel zum Festlegen von Regeln zum Erstellen / Festlegen von Verzweigungsschutzregeln bereitstellen könnten.
Ich habe es zum Beispiel versucht:
g.get_repo('GEHEIM/GEHEIM').get_branch('master').add_required_signatures()
@qbits-rwx Ich denke, die Methode, die Sie brauchen, ist:
https://pygithub.readthedocs.io/en/latest/github_objects/Branch.html#github.Branch.Branch.edit_protection
https://developer.github.com/v3/repos/branches/#update -branch-protection
Ja, das hat den Trick gemacht. Leider erfordern signierte Commits, ist nicht implementiert. Wäre schön zu haben, da es eine Richtlinie ist, die wir für jeden Zweig festlegen müssen.
Fühlen Sie sich frei, eine FR oder PR zu senden
Hey, ich habe Pull-Request-Beispiele durchgesehen. Gibt es eine Möglichkeit, einen Pull-Request mit HTML
? Oder ist eine Funktion zum Konvertieren von HTML-URLs in Github-API-Abfragen verfügbar?
Vielen Dank für diese Beispiele! Was mir fehlt, ist ein Beispiel für die Ausnahmebehandlung. Mir war zum Beispiel nicht sofort klar, wie man ein github.GithubException.UnknownObjectException
fängt.
Hilfreichster Kommentar
Ich schreibe jetzt Organisationsbeispiele