Am folosit Git de câțiva ani și încă mă găsesc căutând cum să fac câteva sarcini de bază. Deci, acest articol este încercarea mea de a învăța cum să fac unele dintre aceste lucruri, scriind despre ele. Și chiar dacă uit totuși, cel puțin voi avea o referință în care pot găsi cu ușurință aceste comenzi – și tu o vei face și tu.

Înainte de a continua să învățăm aceste lucruri, mi-a rămas ceva ce mi-a spus odată un coleg de-al meu. Mi-a spus că totul este posibil cu Git și că nimic nu se pierde în Git.

Nu știu dacă prima parte a declarației sale este pe deplin adevărată, dar o țin minte de fiecare dată când încerc să fac ceva cu Git. Cred că voi găsi o comandă care să mă ajute să fac ceea ce trebuie să fac. Trebuie doar să fac google cu cuvintele potrivite. Dacă ești nou în Git, vreau să crezi și tu asta.

În acest articol, vom învăța cum să faceți următoarele:

  1. Adăugați depozite la distanță
  2. Schimbați depozitele la distanță
  3. Ștergeți o ramură
  4. Îmbinați un fișier de la o ramură la alta
  5. Anulați un commit local și de la distanță

Deși acest articol este destinat persoanelor cu cunoștințe de bază despre Git, voi face tot posibilul pentru a explica termenii cât mai mult posibil.

1. Adăugați depozite la distanță

Depozitele la distanță sunt versiuni ale proiectelor dvs. care sunt stocate pe internet sau în altă parte. Adăugarea unui depozit la distanță este o modalitate de a spune Git unde este stocat codul dvs.

Putem face acest lucru folosind adresa URL a depozitului. Aceasta ar putea fi adresa URL a depozitului dvs., furculița unui alt utilizator sau chiar un server complet diferit.

Când clonați un depozit, Git adaugă implicit acel depozit ca origin la distanță pentru tine. Pentru a adăuga un nou depozit Git, utilizați această comandă:

git remote add <shortname> <url>

Unde shortname este un nume unic la distanță și url este adresa URL a depozitului pe care doriți să îl adăugați.

De exemplu, dacă vreau să adaug un depozit cu numele scurt upstream, Pot sa fac asta:

git remote add upstream https://github.com/sarahchima/personal-website.git

Amintiți-vă că shortname poate fi orice, trebuie doar să fie unic, care este diferit de ceea ce numele depozitelor la distanță pe care le aveți deja. De asemenea, ar trebui să fie ceva ce vă puteți aminti cu ușurință pentru sănătatea dumneavoastră.

Pentru a vizualiza lista de adrese URL la distanță pe care le-ați adăugat, rulați următoarea comandă:

git remote -v

Veți vedea o listă a numelor la distanță și a adreselor URL pe care le-ați adăugat.

Dar dacă doriți să modificați aceste adrese URL la distanță? Să trecem la următoarea comandă Git.

2. Schimbați depozitele la distanță

Există mai multe motive pentru care poate doriți să modificați o adresă URL la distanță. De exemplu, recent a trebuit să trec de la utilizarea https Adrese URL către SSH Adrese URL pentru un proiect la care am lucrat.

Pentru a face acest lucru, utilizați următoarea comandă:

git remote set-url <an-existing-remote-name> <url>

Pentru ca această comandă să funcționeze, numele de la distanță trebuie să fie un nume de la distanță existent. Asta înseamnă că nu va funcționa dacă nu ați adăugat anterior acel nume la distanță.

Folosind exemplul de mai sus, dacă vreau să schimb adresa URL la distanță, voi face acest lucru:

git remote set-url upstream git@github.com:sarahchima/personal-website.git

Nu uitați să fugiți git remote -v pentru a verifica dacă schimbarea dvs. a funcționat.

Suficient despre depozitele la distanță. Să trecem la ceva diferit.

3. Ștergeți o sucursală atât local, cât și de la distanță

O ramură este o versiune a depozitului care este diferită de proiectul principal de lucru. Poate doriți să citiți despre sucursalele Git și cum să adăugați o sucursală dacă nu sunteți familiarizat cu acest proces.

Cum să ștergeți o sucursală locală

Pentru a șterge o sucursală local, asigurați-vă că nu vă aflați pe ramura pe care doriți să o ștergeți. Deci, trebuie să faceți check-out la o altă ramură și să utilizați următoarea comandă:

git branch -d <name-of-branch>

Deci, dacă vreau să șterg o ramură numită fix/homepage-changes, Voi face următoarele:

git branch -d fix/homepage-changes

Poți fugi git branch pe terminalul dvs. pentru a confirma că sucursala a fost eliminată cu succes.

Uneori poate fi necesar să ștergeți o ramură pe care ați împins-o deja într-un depozit la distanță. Cum poți face asta?

Cum să ștergeți o ramură la distanță

Pentru a șterge o ramură de la distanță, utilizați următoarea comandă:

git push <remote-name> --delete <name-of-branch>

Unde remote-name este numele depozitului de la distanță din care doriți să ștergeți ramura.

Dacă vreau să șterg ramura fix/homepage-changes din origin, Voi face acest lucru:

git push origin --delete fix/homepage-changes

Sucursala va fi ștearsă acum de la distanță.

4. Îmbinați un fișier de la o ramură la alta

Uneori, poate doriți să îmbinați conținutul unui anumit fișier dintr-o ramură în alta. De exemplu, doriți să îmbinați conținutul unui fișier index.html în master ramura unui proiect în development ramură. Cum poți face asta?

Mai întâi, verificați în ramura din dreapta (ramura în care doriți să îmbinați fișierul) dacă nu ați făcut-o deja. În cazul nostru, este development ramură.

git checkout development

Apoi îmbinați fișierul folosind comanda checkout –patch.

git checkout --patch master index.html

Dacă doriți să suprascrieți complet fișierul index.html fișier pe development ramură cu cea de pe master ramură, lăsați afară --patch steag.

git checkout master index.html

De asemenea, lăsați --patch steag dacă index.html fișierul nu există pe fișierul development ramură.

5. Anulați o comitere

Există momente în care ați comis modificările dvs. incorect și doriți să anulați acest commit. Uneori, este posibil să fi împins chiar modificările către o ramură la distanță. Cum anulați sau ștergeți acest commit? Să începem cu anularea unui commit local.

Cum se anulează un commit local

O modalitate prin care puteți anula un commit local este folosind git reset. De exemplu, dacă doriți să anulați ultima comitere efectuată, puteți rula această comandă:

git reset --soft HEAD~1

--soft steagul păstrează modificările pe care le-ați făcut fișierelor pe care le-ați comis, doar comiterea este anulată. Cu toate acestea, dacă nu doriți să păstrați modificările aduse fișierelor, puteți utiliza fișierul --hard semnalizați în schimb așa:

git reset --hard HEAD~1

Rețineți că ar trebui să utilizați --hard semnalizați numai atunci când sunteți sigur că nu aveți nevoie de modificări.

De asemenea, rețineți că HEAD~1 indică ultima comitere. Dacă doriți să anulați un commit înainte de aceasta, puteți utiliza git reflog pentru a obține un jurnal al tuturor angajamentelor anterioare. Apoi utilizați git reset comanda cu hashul commit (numărul pe care îl obțineți la începutul fiecărei linii de istorie). De exemplu, dacă hash-ul meu de comitere este 9157b6910, Voi face asta

git reset --soft 9157b6910 

Cum se anulează un commit la distanță

Uneori doriți să anulați un commit pe care l-ați împins într-un depozit la distanță. Poți să folosești git revert pentru a o anula local și a împinge această modificare la ramura de la distanță.

Mai întâi, obțineți hash-ul de commit folosind git reflog.

git reflog

Apoi reveniți. Presupunând că hash-ul meu de comitere este 9157b6910, voi face următoarele:

git revert 9157b6910 

În cele din urmă, împingeți această modificare la ramura la distanță.

rezumat

În acest articol, am discutat despre comenzi pentru a face următoarele în Git:

  1. Adăugați depozite la distanță
  2. Schimbați depozitele la distanță
  3. Ștergeți o ramură
  4. Îmbinați un fișier de la o ramură la alta
  5. Anulați un commit local și de la distanță

Poate cândva, voi scrie despre mai multe lucruri pe care le poți face cu Git.

Sper că ți-a plăcut articolul. Mulțumesc pentru lectură.

Doriți să primiți o notificare când public un articol nou? Click aici.