Probiere doch erstmal 3)
Uwe Von meinem iPad gesendet > Am 26.04.2020 um 01:16 schrieb Harald Weidner <[email protected]>: > > Hallo, > > in der TroLUG arbeiten ja viele mit Git und Github, es gab ja auch schon > mehrere Vorträge dazu. > > Mich würden mal eure Meinungen zum Umgang mit Pull Requests interessieren. > > Was würdet ihr machen, wenn ihr zu einem von euch auf Github eingestellten > Projekt ohne vorherige Ankündung von einem bisher unbekannten User einen Pull > Request bekommt? Der Request führt mehrere thematisch unterschiedliche > Änderungen > ein. Einen Teil davon möchte ich definitiv nicht übernehmen. Bei einem anderen > sehe ich prinzipiell die Notwendigkeit einer Änderung, aber es gibt mehrere > denkbare Optionen und ich bin noch unschlüssig. Der vom Sourcecode-Umfang her > größte Teil ist durchaus in Ordnung, müsste allerdings noch ein bisschen > überarbeitet werden, außerdem wurde bei der Dokumentation geschlampt. Der Pull > Request besteht aus einem einzelnen Commit mit allen Änderungen, ein > Cherry-Picking > im Git-Sinne ist nicht möglich. > > Einerseits freue ich mich ja, dass andere mit meinen Tools arbeiten und sich > an der Weiterentwicklung beteiligen wollen, und möche den Interessenten > nicht vergraulen. Andererseits möchte ich gewisse Mindesstandards > durchsetzen, immerhin erscheint das Projekt unter meinem Namen. > > Ich sehe nun drei Möglichkeiten: > > (1) Den Pull Request annehmen (in einem eigenen Branch), ihn nach meinen > Vorstellungen überarbeiten (und dabei Teile der neu eingeführten > Funktionalität > wieder entfernen) und dann nach master mergen. > > Das hat den Vorteil, dass die eine Hauptänderung unter dem Namen des Autors > in der Commit History erscheint, aber trotzdem keine unerwünschten > Änderungen in master Branch landen. Nachteile sind aber, dass ich eigentlich > einen Teil der Änderungen auch in einem Seitenbranch nicht sehen möchte, > schließlich kann jeder den später pullen (warum auch immer). Außerdem soll > es nicht den Eindruck erwecken, dass jeder alles abkippen kann und ich > hinter ihm aufräume. > > (2) Den Pull Request ablehnen und die eine erwünschte Änderung selber (ggf. > per Copy-Paste aus dem Diff) durchführen. > > Somit erscheint nur diese Änderung in der Commit History und die Dokumentation > wird sauber mitgeführt. Allerdings erscheint dieser Commit unter meinem > Namen, die Urheberschaft des Einreichers ist an der History nicht erkennbar > und Github führt ihn in den "Insights" weiterhin nicht als Beitragenden. > > (3) Verhandeln mit dem Autor, bis er den Pull Request soweit anpasst, dass er > meinen Vorstellungen entspricht. > > Das hat den Vorteil, dass dann sein Name zu seinem Code in der History > erscheint. > Allerdings könnte er zwischendrin die Lust verlieren, insbesondere wenn sich > die Verhandlung über mehrere Iterationen hinzieht oder das Resultat sich zu > weit > von seinem ursprünglichen Beitrag entfernt. Erschwerend kommt hinzu, dass ich > mir > an der einen Stelle selber noch unsicher bin, welches die beste Lösung ist. > > Was meint ihr? > > Gruß, Harald >
