Was ist besser für kleine Fehlerkorrekturen und kleine Funktionen - Benennen von Zweigen nach Ticketnummer oder Benennen nach Funktionsbeschreibung?


10

Ich bin mitten in einer Meinungsverschiedenheit (natürlich herzlich) mit meinem Hinweis auf die richtige Benennung von Zweigen. Dies gilt für Bugfix- und kleine Feature-Zweige, nicht für lang laufende Feature-Zweige. Für langjährige Feature-Zweige sind wir uns einig, dass für Menschen lesbare Namen besser sind. Hier sind die beiden Gesichtspunkte:

Bergwerk:

Es ist besser, Filialen nach Team- und Ticketnummer zu benennen. Es macht es einfacher, sie in unserem Ticketsystem zu finden und kürzer zu tippen. Es erleichtert auch das Nachschlagen relevanter Filialen in GIT, wenn Sie nach historischen Informationen zu einem Ticket suchen.

Beispiel:

team-name/12345
team-name/53719

Seine:

Benennen von Zweigen nach ihrer Funktion. Dies erleichtert die automatische Vervollständigung und ist leichter zu merken als einzelne Zahlen.

Beispiel:

team-name/fix-that-sql-bug
team-name/expand-http-parser

Ein Kompromiss, den ich angeboten habe, ist folgender:

team-name/12345-fix-that-sql-bug

Aber er mag das nicht, da es die automatische Vervollständigung von GIT beeinträchtigt.

Wenn dies hauptsächlich auf Meinungen basiert, können Sie mir gerne eine Anleitung geben, wie dies besser zu SO passen kann. Ich denke jedoch, dass die von mir angegebenen Gründe geändert / ergänzt werden können, um eine empirische Antwort zu geben.


Nach meiner Erfahrung war die beste Benennung für Zweige für kleine Fehlerkorrekturen und kleine Funktionen häufig Trunk (früh zusammenführen, häufig zusammenführen => keine Notwendigkeit, Änderungen ohne ausreichende Begründung zu isolieren). Dies gilt natürlich nicht für das Backportieren kritischer Fixes auf Code älterer Versionen, der in der Produktion ausgeführt wird, für den die Isolation mehr als ausreichend gerechtfertigt ist (und für den es wiederum nur natürlich ist, Zweige nach Tickets zu benennen: Sie tun nichts besonders Bedeutendes als Feature, Sie beheben einfach einen konkreten kritischen Produktionsfehler mit einem konkreten Ticket)
Mücke

Antworten:


5

In diesem Fall könnten Sie beide Kompromisse bei einer Namenskonvention eingehen, die sowohl die Nummer als auch die Beschreibung enthält:

Beispiel:

Teamname / (12345) -fix-that-sql-bug

Teamname / (53719) -expand-http-Parser

Hier gibt es wirklich keine richtige Antwort, sie ist abhängig von Ihrer Sichtweise subjektiv.

Aber wenn Sie beide Kompromisse eingehen, bekommen Sie das Beste aus beiden Welten. Ich versuche dies zu berücksichtigen, wenn wir ähnliche Meinungsverschiedenheiten in meinem Team haben.

Bearbeiten:

Um das Problem der automatischen Vervollständigung zu lösen, können Sie die nummerierte ID in Klammern setzen, wenn Sie einen Zweig eingeben, den Sie immer eingeben (um die Zweige anzuzeigen. In dieser Liste können Sie die nummerierte ID und die Beschreibung sehen. Geben Sie einfach ein paar Zahlen ein, Tab, und es wird


Ich stimme zu und habe dies hinzugefügt - ich finde es dumm, diesem Kompromiss nicht zuzustimmen.
Codeman

Funktioniert die automatische Vervollständigung nur ab dem Beginn des Filialnamens? Kannst du die ID am Ende setzen? Ich verwende die Autocomplete-Funktion nicht, daher bin ich damit nicht vertraut.
dmck

Ja, es funktioniert von Anfang bis Ende. Wenn Sie möchten, müssen team-name/12345-my-ticket-fixSie im team-name/123Wesentlichen TAB eingeben.
Codeman

@ Pheonixblade9 Siehe meine Bearbeitung für eine mögliche Lösung, setzen Sie ein (vor der ID sollte verhindern, dass Sie die ID kennen müssen, wenn Sie den
Zweignamen

1

Es spielt wirklich keine Rolle, solange es ein konsistentes System gibt, dem alle zustimmen und das sie verstehen.

Ich würde jedoch sagen, dass es einfacher wäre, sich an die Filiale zu erinnern, an der gearbeitet werden soll. Da sie direkt an die Ausgabenummer und nicht an eine Beschreibung gebunden sind. Nur eine Beschreibung zu machen, scheint es schwieriger zu machen, sich daran zu erinnern, um welches spezifische Problem es sich handelt, und könnte langwierig werden, um nicht vage zu sein.

team-name/bug-that-has-specific-circumstances-to-occur-and-takes-alot-to-describe


0

Es ist dumm, etwas zu benennen, das nur die Vorteile der automatischen Vervollständigung nutzt.

Ich bin damit einverstanden, dass ein Link zum Bug-Tracker wichtig ist (wichtiger als ein guter Name, da er genau das Problem definiert, das von dem Zweig gelöst wird, den ein paar Wörter nicht lösen), aber gleichzeitig ist es ein Usability-Fehler, Menschen zu erwarten um den Unterschied zwischen Fehler # 7312 und # 7213 zu kennen. Es ist auch ein Versäumnis zu erwarten, dass die Leute jedes Mal die richtigen Zahlen finden - eines Tages wird sich jemand für den falschen Zweig entscheiden, weil er 7312 für 7213 falsch verstanden / falsch geschrieben hat. (Jemand in meinem Team hat das heute getan!)

Machen Sie also beides - nummerieren Sie den Zweig und fügen Sie eine sehr kurze Textbeschreibung hinzu, um als Kontrolle zu dienen. Ich würde die Nummer an die erste Stelle setzen - Autocomplete verdammt noch mal - da Sie den Text des Zweigs sowieso noch kennen müssen (z. B. "Bug-Fix-für-Server" oder "Fix-Bug-für-Server" - müssen Sie noch wissen wenn es mit f oder b beginnt!)

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.