GitHub Desktop pentru Data Scientists

Nodul sursă: 1876650

GitHub Desktop pentru Data Scientists

Mai puțin înfricoșător decât controlul versiunilor în linia de comandă.


By Drew Seewald, Data Scientist

Controlul versiunilor este important pentru colaborarea la cod, pentru a-l partaja cu alții, pentru a putea vizualiza versiunile vechi ale codului și chiar pentru a implementa codul automat. Poate fi puțin confuz la început, dar merită din plin timpul tău, mai ales dacă lucrezi în spațiul open source sau într-o echipă în care vei folosi frecvent controlul versiunilor pentru proiecte. Iată câteva dintre cele mai mari caracteristici care merită să fie folosite:

  • Stocarea istoricului modificărilor fișierelor cu comentarii
  • Organizarea mai multor utilizatori care editează același proiect simultan
  • Facilitarea procedurilor de revizuire a codului
  • Automatizarea fluxurilor de lucru pentru a raporta probleme, a solicita îmbunătățiri și a implementa cod

Relaxează-te, nu trebuie să folosești linia de comandă
Relaxează-te, nu trebuie să folosești linia de comandă
Fotografie de Dennis van Dalen on Unsplash

 

Caracteristici de control al versiunii

 
 
Una dintre principalele caracteristici ale controlului versiunilor este istoricul modificărilor fișierelor pentru fiecare fișier din depozit. Acesta servește ca jurnal de modificări pentru fiecare fișier, astfel încât este întotdeauna posibil să vedeți ce cod rula în orice moment în trecut. De fiecare dată când cineva actualizează un fișier și trimite noua versiune în depozit, trebuie să adauge un scurt comentariu. Într-o lume perfectă, aceasta detaliază care au fost schimbările și de ce au fost făcute. Dacă există vreodată o întrebare despre motivul pentru care a fost schimbat ceva sau de ce, persoana responsabilă va fi etichetată în comitere, împreună cu informațiile suplimentare pe care le-a furnizat.

O altă caracteristică a controlului versiunilor este capacitatea de a crea ramuri. O ramură este o nouă versiune a codului care este păstrată separat. Acest lucru este util pentru efectuarea și testarea modificărilor codului, deoarece nu modifică ramura principală, unde este cea mai actualizată versiune de lucru. Ramurile pot fi, de asemenea, folosite de diferiți utilizatori pentru a lucra la diferite coduri sau caracteristici în același timp. Aceste ramuri pot fi îmbinate înapoi la master când sunt gata și există un proces de reconciliere a diferențelor dintre ele la îmbinare.

Revizuirea codului este cea mai bună practică atunci când lucrați cu echipe. O persoană poate face toată munca la o nouă caracteristică dintr-o nouă ramură, dar înainte de a o îmbina orbește în ramura principală, ar trebui să fie revizuită de echipă. Când este creată o cerere de extragere pentru a muta codul în ramura principală, începe, de asemenea, o discuție în care membrii echipei pot vorbi despre cod și pot solicita modificări înainte ca acesta să fie fuzionat în ramura principală. Acest proces ar trebui să ajute la îmbunătățirea codului care intră în producție pentru a preveni erorile și întreruperile, pentru a îmbunătăți eficiența codului sau chiar pentru a face ca acesta să se potrivească cu un standard pentru formatarea codului.

Un ultim beneficiu demn de remarcat al utilizării GitHub pentru controlul versiunilor sunt opțiunile de automatizare pe care le oferă. Dacă există o listă de verificare standard de verificare a codului, aceasta poate fi adăugată ca șablon care va fi disponibil atunci când este creată o cerere de extragere, gata să fie completată pe măsură ce sarcinile de revizuire sunt finalizate. Șabloanele pot fi folosite și atunci când oamenii creează probleme, astfel încât să își amintească toate detaliile pe care trebuie să le introducă în timp ce creează o problemă. GitHub oferă, de asemenea, acțiuni pentru a sprijini automatizarea. Acestea pot fi declanșate de diferite evenimente, cum ar fi fuzionarea codului în ramura principală. O acțiune poate rula teste unitare, poate construi/compila componente de pachet și chiar poate implementa cod în producție.

Arome de control al versiunilor

 
 
Există câteva nume mari de control al versiunilor despre care poate ați auzit. Unele dintre cele mai populare sunt Git și GitHub. merge este tehnologia de bază pentru controlul versiunilor și GitHub este un software care simplifică fluxul de lucru pentru controlul versiunilor.

Git poate fi folosit local, fără a fi nevoie de un depozit extern. Puteți face toate sarcinile de control al versiunilor pe hard diskul computerului. Arhivele Git locale sunt ideale pentru proiecte personale sau atunci când nu sunteți pregătit să vă împărtășiți codul întregii echipe, dar doriți totuși beneficiile controlului versiunilor.

Site-ul web GitHub este un depozit pentru stocarea codului. O mulțime de proiecte open source, cum ar fi pachetele Python și R, sunt găzduite pe site-ul GitHub. Pentru depozitele publice, oricine poate vizualiza istoricul revizuirilor, problemele cu pachetul și documentația legată de acesta.

Pentru a vă conecta la un depozit de pe site-ul GitHub, putem folosi Git sau GitHub Desktop. Pentru cei dintre voi care iubesc o interfață de linie de comandă (CLI), Rebecca Vickery are un articol grozav despre folosind Git CLI pentru Data Science. Deci de ce ar trebui să continui să citești? Liniile de comandă pot fi intimidante. Nu este nimic greșit în a dori o interfață grafică de utilizator (GUI) pentru a gestiona controlul versiunilor. GitHub Desktop oferă o interfață clară și simplă cu depozitul dvs.

Fluxul procesului desktop GitHub

 
 
Deși toată lumea va avea un flux de proces ușor diferit pentru depozitul lor, există câțiva pași generali pentru a face modificări codului pe GitHub:

  1. Crearea unei sucursale
  2. Adăugarea de comite
  3. Crearea unei noi cereri de extragere
  4. Finalizarea revizuirii codului
  5. Fuzionarea cererii de extragere

Crearea unei sucursale face o copie a codului de producție curent. Un dezvoltator va face modificări fișierelor, comitând orice modificări în noua ramură. Apoi, o cerere de extragere va deschide o discuție pentru a adăuga modificările noii sucursale la codul de producție, de obicei în ramura principală sau principală. Evaluatorii de cod pot adăuga comentarii și pot solicita clarificări cu privire la modificările făcute în cererea de extragere. Odată ce revizuirea este finalizată și toate modificările necesare efectuate, cererea de extragere poate fi îmbinată cu ramurile principale sau principale și închisă.

Să parcurgem acești pași mai detaliat, uitându-ne la cum să-i facem pe fiecare folosind GitHub Desktop.

Crearea unei filiale (separând noul cod de cel vechi)

 
 
Pentru a face o schimbare, mai întâi creați o nouă ramură. Dacă aveți acces deplin la depozit, puteți pur și simplu să creați o nouă ramură pe site-ul GitHub al depozitului.

1a. Faceți clic pe Branch: main



Imagine de autor

 

2a. Introduceți numele noii ramuri în caseta de text. Ar putea exista unele convenții de denumire a filialelor de luat în considerare din partea organizației dvs. pentru a menține lucrurile organizate



Imagine de autor

 

3a. Faceți clic pe Creare ramură



Imagine de autor

 

Noua ramură va fi acum selectată.



Imagine de autor

 

Dacă nu aveți acces deplin la depozit, ceea ce este obișnuit pentru proiectele publice, va trebui să forkați depozitul. O ramură nouă și o furculiță sunt sinonime. Un furk va fi creat într-un nou depozit, spre deosebire de același cod ca și codul de producție, de obicei sub profilul dvs. personal. A bifurca:

1b. În dreapta sus, faceți clic pe Furcă



Imagine de autor

 

2b. Așteptați ca fișierele să fie copiate



Imagine de autor

 

3b. Noua furcă va fi selectată



Imagine de autor

 

Adăugarea de comisioane (îmbunătățirea codului/adăugarea de caracteristici)

 
 
Pentru a face comite la cod, veți clona depozitul pe computerul local. Aceasta copiază codul la care să lucrați înainte de a trimite actualizările înapoi la depozit. Pentru a clona depozitul pe mașina dvs. locală:

Faceți clic pe clonați sau descărcați.



Imagine de autor

 

Faceți clic pe Deschide cu desktopul GitHub.



Imagine de autor

 

Dacă nu aveți GitHub Desktop, faceți clic pe descărcați GitHub Desktop.



Imagine de autor

 

Desktopul GitHub vă va întreba unde să clonați depozitul pe mașina dvs. locală. Acesta este câmpul Cale locală.



Imagine de autor

 

Faceți clic pe ramură și selectați ramura nou creată. Acest lucru va actualiza fișierele de pe mașina dvs. locală cu orice actualizări de pe acea ramură și va face ca acesta să fie cel activ la care să adăugați comite.



Imagine de autor

 

Pentru a face modificări, deschideți directorul pe care l-ați ales la clonare și faceți modificări cu editorul de text sau mediul de dezvoltare integrat (IDE) ca de obicei. Salvați fișierele.

Reveniți la GitHub Desktop. GitHub Desktop scanează în mod constant arborele folderului depozitului și va vedea orice modificări pe care le faci. Aceste modificări vor apărea în panoul din stânga. Panoul din dreapta va previzualiza modificările aduse fișierului selectat (anumite tipuri de fișiere nu vor previzualiza).



Imagine de autor

 

De fiecare dată când faceți un set de modificări asociate, trimiteți acele modificări în depozitul dvs. Nu uitați să adăugați comentarii la comite, astfel încât oamenii să poată identifica cu ușurință ceea ce a fost schimbat. Caseta de text de sus este pentru o descriere rapidă, dar dacă aveți mai multe note de adăugat despre comitere, puneți-le în caseta de text de descriere mai mare.

Cu modificările făcute și comentariile adăugate, comite modificările.



Imagine de autor

 

Comitarea modificărilor le salvează numai în fișierele locale. Pentru a împinge modificările înapoi pe serverul GitHub, faceți clic pe push origin. Dacă există comiteri efectuate care nu au fost împinse înapoi pe server, va apărea un mesaj în panoul din dreapta care spune Apăsați xx comiterea(e) la telecomanda de origine. Originea este doar un nume pentru locul din care a fost clonat depozitul.



Imagine de autor

 

Deschideți o cerere de tragere

 
 
Navigați la depozitul dvs. de pe serverul GitHub. Asigurați-vă că sunteți pe ramura corectă. Dacă ați creat o nouă ramură în depozitul original, navigați acolo. Dacă ai fost nevoit să transferi depozitul, navighează la depozitul din profilul tău personal.

Pe Trageți cererile , faceți clic pe Cerere de tragere nouă.



Imagine de autor

 

Selectați noua ramură ca cea de comparat și faceți clic pe create pull request. În cazul nostru, cererea de extragere este completată automat cu comentariile noastre de comitere.



Imagine de autor

 

Revizuirea codului

 
 
Examinarea codului ne ajută să ne asigurăm că codul pe care îl adăugăm sau îl modificăm este corect și a fost revizuit și aprobat de mai multe persoane. Indiferent dacă aveți sau nu acces la un depozit, ar trebui să solicitați întotdeauna recenzenților să verifice modificările. Dacă există întrebări, discutați-le în echipă.

Solicitările de extragere apar în fila Cerere de extragere a depozitului. Fiecare cerere de extragere are o conversație, se comite și fișiere schimbate.

Conversația este locul în care oamenii pot adăuga întrebări sau comentarii despre cod. Puteți să vă formatați comentariile și să etichetați persoane și probleme în comentariile dvs.

Comitări arată toate comitările și comentariile făcute în cererea de extragere

Fișierele modificate arată ce fișiere au fost modificate, adăugate sau șterse împreună cu comparații rând cu rând ale codului, acolo unde este disponibil



Imagine de autor

 

Îmbinați cererea de tragere

 
 
În cazul meu, ramura mea principală a fost schimbată în timp ce lucram la noua filială. Acesta este motivul pentru care există mesaje care spun că există conflicte de rezolvat. Făcând clic pe butonul Rezolvare conflicte, se deschide un editor. Acesta va afișa versiunea fișierului din fiecare ramură, permițându-vă să ștergeți unul și să îl păstrați pe celălalt sau să creați o versiune a ambelor.



Imagine de autor

 

În acest caz, versiunea din ramura principală este corectă. Modificările din cealaltă ramură și separatoarele pot fi șterse. Conflictul poate fi marcat ca rezolvat și poate fi angajat la fuziune.



Imagine de autor

 

Cu revizuirea codului și conflictele în afara drumului, cererea de extragere poate fi îmbinată. Încă o dată va exista o opțiune de a oferi un comentariu cu privire la ceea ce realizează îmbinarea. După fuziune, codul va face parte din ramura principală sau principală!



Imagine de autor

 

Și iată-l, acum știți cum să finalizați cele mai de bază sarcini de control al versiunilor folosind GitHub și GitHub Desktop!

Scriu despre știința datelor, analiză și concepte de programare. Te poți conecta cu mine pe MediuTwitter, și LinkedIn.

Lecturi suplimentare

 
 
Înțelegerea fluxului GitHub
Când lucrați la un proiect, veți avea o grămadă de funcții sau idei diferite în desfășurare în orice moment...

 
Control versiune cu Git
Wolfman și Dracula au fost angajați de Universal Missions (un spin-off al serviciilor spațiale de la Euphoric State University) pentru...

 
Ce este controlul versiunilor | Tutorial Atlassian Git
Controlul versiunilor, cunoscut și sub numele de control sursă, este practica de urmărire și gestionare a modificărilor la codul software...

 
Bio: Drew Seewald este Data Scientist la Mercedes-Benz Financial Services. Urmărește-l pe Drew pe Twitter @RealDrewData sau conectați-vă LinkedIn.

Original. Repostat cu permisiunea.

Related:

Sursa: https://www.kdnuggets.com/2021/09/github-desktop-data-scientists.html

Timestamp-ul:

Mai mult de la KDnuggets