Git hjelper forskjellige, distribuerte team med å jobbe på en enhetlig kodebase. Med denne kraften følger et ansvar: å legge igjen gode beskrivelser av endringene dine.

Commit-meldinger er korte beskrivelser av hver commit i et versjonskontrollsystem som Git. Når du foretar endringer i prosjektfilene dine, bør du gi en melding som forklarer hva de gjør eller hvorfor du har laget dem.

Forpliktende meldinger fungerer som en form for dokumentasjon og kommunikasjon. De spiller en avgjørende rolle for å opprettholde en klar og organisert versjonshistorie av et prosjekt. Lær hvordan du skriver gode forpliktende meldinger, og de andre medlemmene av teamet ditt vil sette enda mer pris på arbeidet ditt.

Strukturen til en god forpliktelsesmelding

Et godt eksempel på en commit-melding inkluderer fire seksjoner: Type, Description, Body og Footer.

Som så:

: 

[valgfri tekst]

[valgfri bunntekst]

Type

Typen beskriver hva slags endring som er gjort i den nåværende forpliktelsen. Du kan bruke hvilket som helst system som er fornuftig for omstendighetene dine. Her er for eksempel noen eksempler på søkeord du kan bruke for å signalisere hver type endring, sammen med eksempelbruk:

  • bragd: endringene dine introduserer en ny funksjon.
  • fastsette: du fikser en feil.
  • refaktor: endre refactors-koden uten å fikse en feil eller legge til en ny funksjon.
  • test: du gjør eventuelle testrelaterte endringer. For eksempel når du skrive tester med Jest eller noen annet testrammeverk du velger.
  • ork: endringer som ikke er relatert til en rettelse, funksjon eller test. For eksempel oppdatering av avhengigheter.
  • dokumenter: når du oppdaterer dokumentasjon.
  • stil: endringer som ikke påvirker betydningen av koden, for eksempel å legge til mellomrom, manglende semikolon osv.
  • perf: endringer relatert til ytelsesforbedringer.
  • bygge: når du gjør endringer som påvirker byggefilene.
  • ci: endringer knyttet til kontinuerlig integrasjon.
  • gå tilbake: når du går tilbake til en tidligere commit.

Beskrivelse

"Beskrivelsen" av en commit-melding er en kortfattet og beskrivende oppsummering av endringene som er gjort i commit. Den fungerer som en overskrift som fanger essensen av forpliktelsen.

Når du skriver beskrivelsen, husk følgende:

  • Gjør det klart og spesifikt nok til å beskrive forpliktelsen med et øyeblikk.
  • Gjør det kort og konsist. Ideelt sett vil det være best å begrense den til 50 tegn eller mindre.
  • Skriv det i nåtid, selv om du beskriver endringer som allerede er gjort.
  • Benytt deg av den imperative stemningen mens du skriver den.
  • Start den med stor bokstav.
  • Ikke avslutt det med en periode.

For eksempel:

feat: Implementer mørk modus-veksling for hjemmesiden

Dette eksemplet viser hvordan du kan skrive beskrivelsen for en forpliktelse som implementerer mørk modus. Den bruker bragd type fordi den introduserer en ny funksjon.

Body (valgfritt)

Brødtekstdelen av en forpliktelsesmelding gir ytterligere detaljer og kontekst om endringene som er gjort i forpliktelsen. Du trenger ikke alltid en kropp, men den kan bidra til å gi mer informasjon, forklare en endrings begrunnelse eller beskrive eventuelle tekniske hensyn.

Her er noen ting du bør merke deg når du skriver hoveddelen av en forpliktelsesmelding:

  • Git bryter aldri tekst automatisk, så pakk den manuelt med 72 tegn når du skriver brødteksten. Dette gir Git nok plass til å rykke inn tekst, noe som gjør den mer lesbar.
  • Bruk kroppen til å forklare hva som skjedde i endringen, hvorfor du gjorde endringen og begrunnelsen bak endringen.
  • Du må legge igjen en tom linje mellom beskrivelseslinjen og brødteksten. Dette gjør at Git kan skille mellom dem.
  • Hvis forpliktelsen introduserer flere endringer eller påvirker forskjellige områder av kodebasen, bør du vurdere å bruke punktpunkter eller avsnitt for å bryte ned endringene. Dette forbedrer lesbarheten og hjelper leserne å forstå de forskjellige aspektene ved forpliktelsen.

For eksempel:

feat: Legg til GitHub som en OAuth-leverandør

Integrer GitHub som en OAuth-leverandør for å aktivere sømløs
autentisering med GitHub-kontoer.

- Implementer OAuth-autentiseringsflyt med GitHub API
- Konfigurer nødvendige endepunkter og innstillinger for GitHub-autentisering
- Oppdater brukergrensesnittet for å inkludere GitHub-påloggingsalternativ

Eksemplet ovenfor viser en god Git commit-melding for en funksjon som legger til GitHub som en OAuth-leverandør til søknaden din. Denne forpliktelsesmeldingen har en kortfattet oppsummeringslinje (50 tegn eller mindre), en mer detaljert forklarende tekst (innpakket til ca. 72 tegn) og punktpunkter for ytterligere informasjon.

Bunntekstdelen i en commit-melding er en valgfri del som gir tilleggsinformasjon eller metadata relatert til commit. Den er vanligvis plassert etter kroppsdelen, atskilt med en blank linje. Bunnteksten kan inneholde ulike typer informasjon, for eksempel referanser til relaterte problemer, tagger eller spesielle merknader.

Når du refererer til problemer, pull-forespørsler eller andre relaterte elementer, bruk riktig syntaks eller format som kreves av prosjektets problemsporingssystem. Dette sikrer at referansene blir riktig gjenkjent og koblet.

For eksempel:

feat: Legg til GitHub som OAuth-leverandør

Integrer GitHub som en OAuth-leverandør for å aktivere sømløs
autentisering med GitHub-kontoer.

- Implementer OAuth-autentiseringsflyt med GitHub API
- Konfigurer nødvendige endepunkter og innstillinger for GitHub-autentisering
- Oppdater brukergrensesnittet for å inkludere GitHub-påloggingsalternativ

Løser: #123
Se også: #456, #789

Bunnteksten refererer til relatert problem #123 og nevner andre relaterte problemer #456 og #789 for ytterligere kontekst.

Legger til Commit Message

Du kan skrive commit-meldinger ved å bruke -m flagg etterfulgt av commit-meldingen i anførselstegn (valgfritt, men anbefalt).

De -m flagget er ideelt for korte commit-meldinger, vanligvis inkludert type og beskrivelse.

For eksempel:

git commit -m "chore: Endre linter til ESlint"

Men når commit-meldingen krever flere detaljer, for eksempel en brødtekst og en bunntekst, er det bedre å skrive commit i et tekstredigeringsprogram eller IDE.

Alternativt kan du skrive lange commit-meldinger i en tekstfil og bruke --fil flagg for å spesifisere commit-meldingene som innholdet i tekstfilen.

For eksempel:

git commit --file commit_message.txt

Når du kjører kommandoen ovenfor, vil git bruke filens innhold som commit-meldingen.

Du kan også fortelle git å åpne standardredigeringsprogrammet ditt for å skrive en lengre melding. Hvis du har GIT_EDITOR eller EDITOR miljøvariabelen satt, vil git åpne det programmet når du kjører en bare git forplikte kommando.

Hvorfor du bør skrive gode forpliktende meldinger

Å skrive gode forpliktelsesmeldinger er avgjørende for effektivt samarbeid og vedlikehold av kode. Tydelige og beskrivende meldinger hjelper til med forståelse, feilsøking og kodegjennomgang. De kan til og med bidra til prosjektdokumentasjon eller utgivelsesnotater.

De muliggjør kunnskapsdeling, jevn onboarding og støtte versjonskontroll. Prioritering av kvalitetsforpliktelsesmeldinger forbedrer utviklingsprosesser og sikrer vedlikehold av kodebase.