2015-07-14 7 views
6

Die Situation ist wie folgt:Wann kann der lokale Zweig gelöscht werden?

Ich habe Remote-Zweig von anderen entfernten Zweig entwickeln -> geholt es lokal -> einige Änderungen vorgenommen ->git add ->git commit -> gedrückt Fern und machte Pull-Anforderung.

Pull-Anfrage ist noch da und Zweig wurde noch nicht zusammengeführt.

Ist es sicher, lokale Zweigstellen zu löschen, die noch nicht zusammengeführt wurden?

Ich möchte nicht viele lokale Zweige haben, die ich nicht mehr brauche.

Antwort

5

Es ist technisch sicher, eine lokale Verzweigung zu löschen, nachdem Sie sie in eine entfernte Verzweigung verschoben haben, da Sie Ihre Änderungen immer aus der entfernten Verzweigung abrufen können, auch wenn die Pull-Anforderung noch nicht zusammengeführt wurde.

Allerdings würde ich damit warten, bis die Pull-Anfrage tatsächlich zusammengeführt wird. Die ganze Idee dahinter Pull Requests zu haben, im Gegensatz zu dem, dass man einfach nur das verbinden kann, was sie wollen, ist eine Rückkopplungsschleife zwischen dem Entwickler und dem Betreuer des Projekts. Abhängig von der Etikette des Projekts und dem Grad an Vertrauen, den der Betreuer Ihnen gegenüber hat, kann es mehrere Runden Verbesserungen geben, bevor Ihre Pull-Anfragen zusammengeführt werden. Ich würde den Aufwand vermeiden, jedesmal den lokalen Zweig neu erstellen zu müssen und ihn einfach dort zu belassen und daran zu arbeiten, bis die Anfrage schließlich zusammengeführt wird.

+1

Danke, das war sehr hilfreich, genau das, was ich herausfinden wollte – Phar0x

1

Sie können Ihre lokale Zweigstelle sicher löschen, nachdem Sie Ihre Änderungen in Ihr eigenes Remote-Repository übertragen haben.

Die Pull-Anforderung steht nicht damit in Beziehung, da es sich einfach um eine Anforderung an die Betreuer des ursprünglichen Repositorys handelt, Ihre Änderungen wieder in ihre Codebasis einzufügen. Dafür müssen sie auf Ihr Remote-Repository zugreifen, aber natürlich nicht auf Ihre lokalen Dateien.

1

Die Fernbedienung verfügt über alle Commit-Objekte, die Ihre Arbeit enthalten, so dass Sie Ihre lokale Zweigstelle entfernen können.

Verzweigungen sind extrem leicht (nur 40 Byte Zeiger im Repository zum Commit-Objekt). Ihr Repository und das externe Objekt verfügen über die gleichen Commit-Objekte. Sollten Sie weitere Arbeiten ausführen müssen, bevor die Pull-Anforderung akzeptiert wird, haben Sie einen einfacheren Job in Ihrem lokalen Zweig als wenn Sie es löschen und herunterziehen müssen deine eigene Veränderung und arbeite damit ab.

+0

es spielt keine Rolle, ob die Pull-Anfrage noch nicht akzeptiert wurde, jedes Mal wenn ich anfange, an einer Funktion oder einem Bugfix zu arbeiten, muss ich einen neuen Zweig von remote entwickeln, also brauche ich ihn nicht mehr. Es ist nur eine einfache Sache meiner kleinen OCD – Phar0x

+0

Ich weiß alles über OCD :-) –