2016-08-05 22 views
2

Ich habe ein Repository auf Github, und Benutzer öffnete dort eine Pull-Anforderung. Aber jetzt ist seine PR veraltet (Rebase benötigt oder ich möchte einen Autor bitten, ein paar Probleme zu beheben). Wie kann ich das tun, wenn der Benutzer keine Korrekturen vornehmen oder das Interesse für das Projekt verlieren möchte?Arbeiten mit abgebrochenen Pull-Requests auf Github (Verlauf beibehalten)

Ich kann einen Patch erstellen und lokal anwenden, aber dann werde ich die Commits eines Benutzers verlieren, also werde ich seinen Beitrag entführen.

Wie kann ich verlassene PR zu eigenen Repo ziehen, eigene Fixes machen und eine andere PR erstellen, eine Geschichte des Benutzerbeitrags behalten?

+1

Wie wäre es, den Repo dieses Benutzers (der Zweig für die PR) zu verzweigen, in dieser Gabelung zu arbeiten und schließlich eine neue PR von dieser Gabelung zu erstellen? –

+0

Ja, das ist möglich - aber manchmal ist der Zweig des Benutzers bereits gelöscht. Ich möchte eine allgemeinere Lösung. – deniszh

Antwort

1

Fügen Sie das Repository des Benutzers als Remote in Ihrem lokalen Repository hinzu und holen Sie das Repository aus diesem Repository. Sie sollten den Remote-Zweig mit allen Commits des PR erhalten.

Dann könnten Sie tun, was Sie wollen, beheben Sie durch Hinzufügen neuer Commits, Rebase oder Zusammenführen ... Das liegt an Ihnen.

Und dann sollten Sie eine neue PR machen.

+0

Aber was, wenn der Benutzerzweig bereits gelöscht ist? Pull-Anfrage bleibt in diesem Fall btw – deniszh

+0

Wenn Benutzer Zweig gelöscht wird, ist das ein bisschen schwieriger. Sie müssen das Remote des Upstream-Repositorys ändern, um auch die Pull-Request-Zweige abzurufen. Ich erinnere mich nicht genau an die Syntax (aber sollte gefunden werden) sollte aber etwas wie "pr/1" sein (wobei 1 durch jede PR ID ersetzt wird) – Philippe

+1

https://help.github.com/articles/checking- Out-Pull-Anfragen-lokal/ – Philippe