2017-09-20 3 views
1

Ich bin ziemlich neu beim Erstellen komplexer Features von Github, aber ich möchte sicherstellen, dass Code tatsächlich erstellt wird, bevor eine Pull-Anforderung über meine Zweige zusammengeführt werden kann (Feature -> Entwickeln, Entwickeln -> Release, Release -> Master, usw.).Github Status API

ich einen Abschnitt gefunden, die mich sicher einen Status von „Erfolg“ zu machen, erlaubt ist es, bevor eine PR zusammengefügt werden können, aber meine Frage ist:

Warum in Github hat es einen Status sein schon definiert, bevor ich es aus der Liste der benötigten Statuskontexte auswählen kann? Ist das nicht eine Hühner-vor-dem-Ei-Situation?

Grundsätzlich gehe ich auf die Registerkarte "Einstellungen" meines Repository, klicken Sie auf "Zweige", dann unter "geschützte Zweige", wähle ich meine Niederlassung und klicken Sie auf "Bearbeiten". Von dort wähle ich den Abschnitt aus, der besagt, dass "Statusüberprüfungen erforderlich sind, bevor sie zusammengeführt werden". Von dort, wenn es keine Status-Updates für irgendwelche SHAs für diesen Zweig gab, sagt es mir, dass es in der letzten Woche keine gab. Warum kann ich nicht in den Kontext meines Statusupdates einsteigen, bevor ich einen auswählen muss? Was, wenn dies das erste Mal war, dass jemand in meinen Zweig schob? Dieser Code könnte theoretisch den ganzen Weg durchkommen?

Antwort

1

Es ist ein Huhn-und-Ei-Problem, aber nicht ein, das ist schwierig zu umgehen. Fühlen Sie sich wie ein Github Zugriffstoken und folgen zusammen mit Curl:

$ curl -XPOST -H "Authorization: token $GITHUB_API_TOKEN" \ 
     -d '{"state":"success"}' \ 
     https://api.github.com/repos/<your_username>/<your_repo>/statuses/<latest_sha> 

Das wird erstellen default Status (Sie mit context außer Kraft setzen können, finden Sie the docs) und Sie können auf die Einstellungen zurückgehen, diesen Status konfigurieren für Ihren geschützter Zweig.

+0

Danke ... Ich hatte gehofft, dass das nicht der Fall war, aber que sera sera. –