it-swarm.com.de

Verknüpfen Sie die Problemnummer auf GitHub in einer Commit-Nachricht

Ist es irgendwie möglich, automatisch in der Nachricht git commit einen Link zur Nummer des GitHub-Problems zu haben?

703
Mika Tuupola

Fügen Sie einfach #xxx in Ihre Commit-Nachricht ein, um auf ein Problem zu verweisen, ohne es zu schließen.

Mit new GitHub issues 2. können Sie diese Synonyme verwenden, um ein Problem zu referenzieren und zu schließen it (in Ihrer Commit-Nachricht):

  • fix #xxx
  • fixes #xxx
  • fixed #xxx
  • close #xxx
  • closes #xxx
  • closed #xxx
  • resolve #xxx
  • resolves #xxx
  • resolved #xxx

Sie können #xxx auch durch gh-xxx ersetzen.

Referenzieren und Schließen von Problemen über Repos hinweg funktioniert auch:

fixes user/repo#xxx

Check out die Dokumentation in ihrer Hilfe zur Verfügung.

891
NARKOZ

Wenn Sie einen Link zu einem GitHub-Problem erstellen und das Problem schließen möchten, können Sie die folgenden Zeilen in Ihrer Git-Commit-Nachricht angeben:

Closes #1.
Closes GH-1.
Closes gh-1.

(Alle drei werden funktionieren.) Beachten Sie, dass dies zu dem Problem führt und es auch schließt . Weitere Informationen finden Sie in diesem Blog-Beitrag (sehen Sie sich das eingebettete Video ab ca. 1:40 an).

Ich bin nicht sicher, ob eine ähnliche Syntax einfach auf ein Problem verweist, ohne es zu schließen.

164
mipadi

Sie können auch auf Repos verweisen:

githubuser/repository#xxx

xxx ist die Ausgabenummer

63
narkeeso

github fügt einen Verweis auf das Commit hinzu, wenn es #issuenbr enthält (dies wurde zufällig entdeckt).

60
Henrik Lindberg

sie haben eine nette Nachricht über die neuen Ausgaben 2.0 in ihrem Blog geschrieben https://github.blog/2011-04-09-issues-2-0-the-next-generation/

synonyme umfassen

  • behebt #xxx
  • feste #xxx
  • fix #xxx
  • schließt #xxx
  • schließe #xxx
  • #xxx geschlossen

wenn Sie eines der Schlüsselwörter in einer Commit-Nachricht verwenden, wird Ihr Commit erwähnt oder ein Problem wird geschlossen.

13
xero

Um die Issue-Nummer mit Ihrer Commit-Nachricht zu verknüpfen, sollten Sie in Ihre git-Commit-Nachricht Folgendes einfügen: #issue_number.

Beispiel für eine Commit-Nachricht von dacity Git Commit Message Style Guide

feat: Summarize changes in around 50 characters or less

More detailed explanatory text, if necessary. Wrap it to about 72
characters or so. In some contexts, the first line is treated as the
subject of the commit and the rest of the text as the body. The
blank line separating the summary from the body is critical (unless
you omit the body entirely); various tools like `log`, `shortlog`
and `rebase` can get confused if you run the two together.

Explain the problem that this commit is solving. Focus on why you
are making this change as opposed to how (the code explains that).
Are there side effects or other unintuitive consequenses of this
change? Here's the place to explain them.

Further paragraphs come after blank lines.

 - Bullet points are okay, too

 - Typically a hyphen or asterisk is used for the bullet, preceded
   by a single space, with blank lines in between, but conventions
   vary here

If you use an issue tracker, put references to them at the bottom,
like this:

Resolves: #123
See also: #456, #789

Sie können auch auf die Repositorys verweisen:

githubuser/repository#issue_number

Nur als Ergänzung zu den anderen Antworten: Wenn Sie nicht einmal die Commit-Nachricht mit der Issue-Nummer schreiben und zufällig Eclipse für die Entwicklung verwenden möchten, Dann können Sie die eGit- und Mylyn-Plugins sowie den GitHub-Connector für Mylyn installieren. Eclipse kann dann automatisch nachverfolgen, an welchem ​​Problem Sie arbeiten, und die Festschreibungsmeldung automatisch ausfüllen, einschließlich der in allen anderen Antworten angegebenen Problemnummer.

Weitere Informationen zu diesem Setup finden Sie unter http://wiki.Eclipse.org/EGit/GitHub/UserGuide

4
Bananeweizen

Eines meiner ersten Projekte als Programmierer war ein Juwel namens Postkutsche , das (unter anderem) das automatische Hinzufügen von a ermöglichte Github-Ausgabenummer für jede Festschreibungsnachricht in einem Zweig. Dies ist ein Teil der Frage, die nicht wirklich beantwortet wurde.

Im Wesentlichen würden Sie beim Erstellen einer Verzweigung einen benutzerdefinierten Befehl (etwa stagecoach -b <branch_name> -g <issue_number>) verwenden, und die Ausgabenummer würde dann dieser Verzweigung in einer yml-Datei zugewiesen. Es gab dann einen Festschreibungs-Haken , der die Ausgabenummer automatisch an die Festschreibungsnachricht anhängt.

Ich würde es nicht für die Produktion empfehlen, da ich zu der Zeit nur ein paar Monate programmiert habe und es nicht mehr pflege, aber es könnte für jemanden von Interesse sein.

3
omnikron