Pentru a crea un istoric util al reviziilor, echipele ar trebui mai întâi să cadă de acord asupra unei convenții de validare a mesajelor de utilizat. Acest lucru se aplică și proiectelor personale.

Recent Hashnode Am întrebat, „Ce convenție de mesaj de validare folosiți la serviciu?” și am primit câteva răspunsuri uimitoare cu utilizatorii care explică convențiile pe care le folosesc la locul de muncă și pentru proiectele lor personale.

În acest articol, voi examina cum să scrieți mesaje de confirmare bune și de ce ar trebui.

PS: Acest articol a fost publicat pentru prima dată pe blogul meu aici.

Introducere în controlul versiunilor cu Git

Software-ul de control al versiunilor este o parte esențială a practicilor moderne ale dezvoltatorilor de software.

De departe, Git este cel mai utilizat sistem de control al versiunilor din lume. Este un proiect open source distribuit și întreținut activ dezvoltat inițial în 2005 de către Linus Torvalds, celebrul creator al kernel-ului sistemului de operare Linux.

Ești nou în Git? Verificați oficialul Ghidul începătorului sau acest diapozitiv dintr-o discuție din trecut pe care am susținut-o.

Ce este un mesaj de confirmare?

comite comanda este utilizată pentru a salva modificările într-un depozit local după etapizarea în Git. Cu toate acestea, înainte de a putea salva modificările în Git, trebuie să îi spuneți lui Git ce modificări doriți să salvați, deoarece s-ar putea să fi făcut multe modificări. O modalitate excelentă de a face acest lucru este prin adăugarea unui comite mesaj pentru a vă identifica modificările.

Opțiuni de comitere

  • -m

Această opțiune setează mesajul de confirmare.

git add static/admin/config.yml
git commit -m "Setup multiple roles for netlify-cms git gateway"
  • -a sau –all

Această opțiune angajează automat toate fișierele urmărite, modificate sau șterse (inclusiv noi).

git commit -a -m "Add a new role for netlify-cms git gateway"
  • – amendează

Această opțiune rescrie ultimul commit cu orice modificări în fază curentă sau un nou mesaj de commit și ar trebui să fie efectuat numai pentru validările care nu au fost încă împinse într-un depozit la distanță.

git add .
git commit --amend -m "Update roles for netlify-cms git gateway"

De ce ar trebui să scrieți mesaje de confirmare bune?

Ați putea spune: „Este doar un proiect personal”. Da, lucrezi singur acum, dar ce se întâmplă când lucrezi cu o echipă sau contribui la open source?

Un mesaj de angajare Git bine elaborat este cel mai bun mod de a comunica contextul unei schimbări altor dezvoltatori care lucrează la acel proiect și, într-adevăr, viitorului dvs. sinelui.

Ai încercat vreodată să alergi git log la unul dintre proiectele dvs. vechi pentru a vedea mesajele de comitere „ciudate” pe care le-ați folosit de la începuturile sale? Poate fi greu de înțeles de ce ați făcut unele modificări în trecut și vă veți dori să citiți acest articol mai devreme :).

Mesajele de angajare pot comunica în mod adecvat de ce a fost făcută o schimbare și o înțelegere care face dezvoltarea și colaborarea mai eficiente.

Cum să scrieți mesaje de confirmare cu Git

Înainte, foloseam doar git commit -m "Fix X to allow Y to use Z" pe proiectele mele personale cu doar un subiect și fără descriere suplimentară. Acest lucru este excelent pentru soluții mici și clare, cum ar fi git commit -m "Fix typo in README.md, dar în cazul unor modificări mai ample, ar trebui să adăugați câteva detalii suplimentare.

Metoda editorului

Alerga git commit fără un mesaj sau opțiune și vă va deschide editorul de text implicit pentru a scrie un mesaj de confirmare.

Pentru a configura editorul „implicit”:

git config --global core.editor nano

Aceasta ar configura Git să utilizeze nano ca editor implicit. Înlocuiți „nano” cu „emacs”, „vim” sau oricare ar fi preferința dvs.

În editorul deschis, prima linie este subiectul (scurtă descriere), lăsați o linie necompletată după el și orice altceva este descrierea extinsă (corpul).

<Summarize change(s) in around 50 characters or less>

<More detailed explanatory description of the change wrapped into about 72
characters>

Metoda liniei de comandă

git commit -m "Subject" -m "Description..."

Primul -m opțiunea este subiectul (scurtă descriere), iar următoarea este descrierea extinsă (corpul).

Cum să scrieți mesaje de comitere bune

Există mai multe convenții folosite de diferite echipe și dezvoltatori pentru a scrie mesaje de validare bune. Voi prezenta doar câteva reguli generale și sfaturi pentru scrierea mesajelor de confirmare – trebuie să decideți ce convenție doriți să urmați. Și dacă lucrezi pentru o companie sau contribui la open source, trebuie să te adaptezi la convenția lor :).

Pentru coerență, puteți utiliza o convenție pentru muncă și alta pentru proiecte personale, deoarece s-ar putea să schimbați locurile de muncă cândva și convenția s-ar putea schimba.

Asigurați-vă că verificați acest fir pentru câteva convenții uimitoare despre mesajele de comitere sau adăugați-le pe ale dvs. pentru a ajuta pe cineva să ia o decizie.

Iată un șablon excelent al unui mesaj de confirmare bun scris inițial de Tim papa

Capitalized, short (50 chars or less) summary

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 an email 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); tools like rebase can get confused if you run the
two together.

Write your commit message in the imperative: "Fix bug" and not "Fixed bug"
or "Fixes bug."  This convention matches up with commit messages generated
by commands like git merge and git revert.

Further paragraphs come after blank lines.

- Bullet points are okay, too

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

- Use a hanging indent

If you use an issue tracker, add a reference(s) to them at the bottom,
like so:

Resolves: #123

Arată grozav, nu? Iată cum poți să-l faci și pe al tău grozav:

  1. Specificați tipul de commit:
  • feat: Noua caracteristică pe care o adăugați la o anumită aplicație
  • corecție: remedierea erorilor
  • stil: caracteristică și actualizări legate de stil
  • refactor: refactorizarea unei secțiuni specifice a bazei de cod
  • test: Tot ce ține de testare
  • docs: Tot ce ține de documentare
  • corvoadă: întreținerea regulată a codului.[ You can also use emojis to represent commit types]
  1. Separați subiectul de corp cu o linie goală
  2. Mesajul dvs. de confirmare nu trebuie să conțină erori de spațiu alb
  3. Eliminați semnele de punctuație inutile
  4. Nu încheiați subiectul cu un punct
  5. Scrieți cu majusculă linia subiectului și fiecare paragraf
  6. Folosiți starea imperativă din linia subiectului
  7. Folosiți corpul pentru a explica ce modificări ați făcut și de ce le-ați făcut.
  8. Nu presupuneți că recenzorul înțelege care a fost problema inițială, asigurați-vă că ați adăugat-o.
  9. Nu credeți că codul dvs. se explică de la sine
  10. Urmați convenția de confirmare definită de echipa dvs.

Concluzie

Cea mai importantă parte a unui mesaj de confirmare este că acesta ar trebui să fie clar și semnificativ. Pe termen lung, scrierea unor mesaje de confirmare bune arată cât sunteți de colaborator. Avantajele scrierii unor mesaje de confirmare bune nu se limitează doar la echipa dvs., ci se extind într-adevăr la dvs. și la viitorii colaboratori.

Doriți să aflați mai multe despre Git și să deveniți un „controler de versiuni” profesional? Consultați aceste resurse excelente: