Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
tutoriale:git [2016/02/09 11:31]
127.0.0.1 external edit
tutoriale:git [2016/02/26 00:49] (current)
Andrei Roșu-Cojocaru
Line 6: Line 6:
 De regulă, instalarea Git se face prin intermediul utilitarelor de gestiune a pachetelor incluse în distribuția Linux: De regulă, instalarea Git se face prin intermediul utilitarelor de gestiune a pachetelor incluse în distribuția Linux:
   * sisteme de tip Debian/​Ubuntu\\ <​code>​   * sisteme de tip Debian/​Ubuntu\\ <​code>​
-student@pdsd2015:~$ sudo apt-get install git+student@eim2016:~$ sudo apt-get install git
 </​code>​ </​code>​
   * sisteme de tip Fedora\\ <​code>​   * sisteme de tip Fedora\\ <​code>​
-student@pdsd2015:~$ sudo yum install git+student@eim2016:~$ sudo yum install git
 </​code>​ </​code>​
-Versiunea curentă este 1.9.1.+Versiunea curentă este 2.1.4.
  
 ==== Windows ==== ==== Windows ====
 Se poate utiliza un client de tipul [[https://​windows.github.com/​|GitHub for Windows]], care este disponibil atât sub forma unei versiuni în linie de comandă (preferabil de utilizat) cât și a unei versiuni care conține o interfață grafică cu utilizatorul. Se poate utiliza un client de tipul [[https://​windows.github.com/​|GitHub for Windows]], care este disponibil atât sub forma unei versiuni în linie de comandă (preferabil de utilizat) cât și a unei versiuni care conține o interfață grafică cu utilizatorul.
  
-Versiunea curentă este 2.9.1.0.+Versiunea curentă este 3.0.12.
  
 ===== Crearea unui cont Github ===== ===== Crearea unui cont Github =====
-  - se accesează [[http://​www.github.com|GitHub]] și se apasă butonul //Sign up for GitHub// completându-se informații precum numele de utilizator, adresa de poștă electronică și parola\\ {{ :​tutoriale:​git:​github01.png?​nolink&​700 }} +**1**. ​se accesează [[http://​www.github.com|GitHub]] și se apasă butonul //Sign up for GitHub// completându-se informații precum numele de utilizator, adresa de poștă electronică și parola\\ {{ :​tutoriale:​git:​github01.png?​nolink&​700 }} 
-  ​- ​se alege planul tarifar implicit, gratuit, care nu oferă posibilitatea de creare de directoare private\\ {{ :​tutoriale:​git:​github02.png?​nolink&​700 ​}} +**2**. ​se alege planul tarifar implicit, gratuit, care nu oferă posibilitatea de creare de directoare private\\ {{ :​tutoriale:​git:​github02.png?​nolink }} 
-  ​- ​în panoul de administrare pot fi accesate mai multe legături către tutoriale pentru familiarizarea cu mediul GitHub; prin apăsarea butonului //New Repository//​ se poate crea o zonă de lucru corespunzătoare unui proiect\\ {{ :​tutoriale:​git:​github03.png?​nolink&​700 ​}} +**3**. ​în panoul de administrare pot fi accesate mai multe legături către tutoriale pentru familiarizarea cu mediul GitHub; prin apăsarea butonului //New Repository//​ se poate crea o zonă de lucru corespunzătoare unui proiect\\ {{ :​tutoriale:​git:​github03.png?​nolink }} 
-  ​- ​crearea zonei de lucru implică specificarea unei denumiri, a unei descrieri (opțional),​ a tipului de director (public sau privat - doar contra cost!!!), a modului de inițializare (local, prin ''​git init''​ sau la distanță, prin ''​git clone''​ - ceea ce implică adăugarea unui fișier ''​README''​),​ a fișierelor ignorate (corespunzătoare limbajului de programare folosit) și a tipului de licență sub care este publicat codul sursă\\ ​{{ :​tutoriale:​git:​github04.png?​nolink&​700 }} +**4**. la adresa de poștă electronică specificată,​ va fi transmisă legătura către pagina Internet pentru confirmarea validității acesteia (se apasă butonul //​Confirm//​). 
- +{{ :​tutoriale:​git:​github04.png?​nolink }}\\  
-La adresa de poștă electronică specificată,​ va fi transmisă legătura către pagina Internet pentru confirmarea validității acesteia (se apasă butonul //​Confirm//​). +{{ :​tutoriale:​git:​github05.png?​nolink }}\\  
-{{ :​tutoriale:​git:​github05.png?​nolink&​700 }}\\  +{{ :​tutoriale:​git:​github06.png?​nolink }} 
-{{ :​tutoriale:​git:​github06.png?​nolink&​700 }}\\  +**5**. ​crearea zonei de lucru implică specificarea unei denumiri, a unei descrieri (opțional),​ a tipului de director (public sau privat - doar contra cost!!!), a modului de inițializare (local, prin ''​git init''​ sau la distanță, prin ''​git clone''​ - ceea ce implică adăugarea unui fișier ''​README''​),​ a fișierelor ignorate (corespunzătoare limbajului de programare folosit) și a tipului de licență sub care este publicat codul sursă\\ {{ :​tutoriale:​git:​github07.png?​nolink }}
-{{ :​tutoriale:​git:​github07.png?​nolink&​700 ​}}+
  
 ===== Configurare ===== ===== Configurare =====
Line 43: Line 42:
 Variabilele de configurare cel mai frecvent utilizate sunt: Variabilele de configurare cel mai frecvent utilizate sunt:
   * legate de **identitatea** utilizatorului,​ importante datorită faptului că sunt incluse (în mod automat) în fiecare operație de consemnare\\ <​code>​   * legate de **identitatea** utilizatorului,​ importante datorită faptului că sunt incluse (în mod automat) în fiecare operație de consemnare\\ <​code>​
-student@pdsd2015:~$ git config --global user.name "Proiectarea si Dezvoltarea Serviciilor Distribuite 2015+student@eim2016:~$ git config --global user.name "Elemente de Informatica Mobila 2016
-student@pdsd2015:~$ git config --global user.email ​pdsd2015@andreirosucojocaru.ro+student@eim2016:~$ git config --global user.email ​informaticamobila2016@gmail.com
 </​code>​ </​code>​
   * legate de **editorul de text** utilizat în mod implicit atunci când este necesară introducerea unui mesaj\\ <​code>​   * legate de **editorul de text** utilizat în mod implicit atunci când este necesară introducerea unui mesaj\\ <​code>​
-student@pdsd2015:~$ git config --global core.editor gedit+student@eim2016:~$ git config --global core.editor gedit
 </​code>​ </​code>​
   * legate de **utilitarul pentru identificarea diferențelor**,​ utilizat pentru rezolvarea conflictelor\\ <​code>​   * legate de **utilitarul pentru identificarea diferențelor**,​ utilizat pentru rezolvarea conflictelor\\ <​code>​
-student@pdsd2015:~$ git config --global merge.tool diff+student@eim2016:~$ git config --global merge.tool diff
 </​code>​ Valori acceptate sunt: ''​vimdiff'',​ ''​kdiff3'',​ ''​tkdiff'',​ ''​meld'',​ ''​xxdiff'',​ ''​emerge'',​ ''​gvimdiff'',​ ''​ecmerge'',​ ''​opendiff'',​ dar și alte programe dezvoltate de utilizatori în acest scop. </​code>​ Valori acceptate sunt: ''​vimdiff'',​ ''​kdiff3'',​ ''​tkdiff'',​ ''​meld'',​ ''​xxdiff'',​ ''​emerge'',​ ''​gvimdiff'',​ ''​ecmerge'',​ ''​opendiff'',​ dar și alte programe dezvoltate de utilizatori în acest scop.
   * legate de **aspect**: ''​color.status'',​ ''​color.branch'',​ ''​color.interactive'',​ ''​color.diff''​.   * legate de **aspect**: ''​color.status'',​ ''​color.branch'',​ ''​color.interactive'',​ ''​color.diff''​.
   * legate de **alias-uri** (prescurtări) ale unor comenzi   * legate de **alias-uri** (prescurtări) ale unor comenzi
     * git <​code>​     * git <​code>​
-student@pdsd2015:~$ git config --global alias.comm commit +student@eim2016:~$ git config --global alias.comm commit 
-student@pdsd2015:~$ git config --global alias.ustg 'reset HEAD --' +student@eim2016:~$ git config --global alias.ustg 'reset HEAD --' 
-student@pdsd2015:~$ git config --global alias.last 'log -1 HEAD'+student@eim2016:~$ git config --global alias.last 'log -1 HEAD'
 </​code>​ </​code>​
     * externe: trebuie precedate de caracterul ''​!''​     * externe: trebuie precedate de caracterul ''​!''​
Line 63: Line 62:
 Valorile variabilelor de configurare pot fi verificate prin comanda: Valorile variabilelor de configurare pot fi verificate prin comanda:
 <​code>​ <​code>​
-student@pdsd2015:~$ git config --list+student@eim2016:~$ git config --list
 </​code>​ </​code>​
 <note important>​Este posibil ca pentru o variabilă de configurare să fie afișate mai multe valori, în cazul în care acestea se regăsesc simultan în fișierele ''/​etc/​gitconfig'',​ ''​~/​.gitconfig''​ respectiv ''​.git/​config'',​ situație în care este utilizată ultima valoare întâlnită,​ prin parcurgerea locațiilor în această ordine.\\ Verificarea valorii utilizate pentru o variabilă de configurare se face prin:<​code>​ <note important>​Este posibil ca pentru o variabilă de configurare să fie afișate mai multe valori, în cazul în care acestea se regăsesc simultan în fișierele ''/​etc/​gitconfig'',​ ''​~/​.gitconfig''​ respectiv ''​.git/​config'',​ situație în care este utilizată ultima valoare întâlnită,​ prin parcurgerea locațiilor în această ordine.\\ Verificarea valorii utilizate pentru o variabilă de configurare se face prin:<​code>​
-student@pdsd2015:~$ git config {configuration_variable}+student@eim2016:~$ git config {configuration_variable}
 </​code>​De asemenea, poate fi listat conținutul fișierelor de configurare,​ individual (folosind comanda ''​cat'',​ de exemplu).</​note>​ </​code>​De asemenea, poate fi listat conținutul fișierelor de configurare,​ individual (folosind comanda ''​cat'',​ de exemplu).</​note>​
  
Line 72: Line 71:
 Cheile SSH reprezintă un mecanism de identificare a mașinilor autorizate, fără a fi necesare parole. Acestea trebuie asociate în mod obligatoriu contului GitHub. Cheile SSH reprezintă un mecanism de identificare a mașinilor autorizate, fără a fi necesare parole. Acestea trebuie asociate în mod obligatoriu contului GitHub.
   - se verifică dacă pe mașina în cauză există deja chei SSH <​code>​   - se verifică dacă pe mașina în cauză există deja chei SSH <​code>​
-student@pdsd2015:~$ ls -al ~/.ssh+student@eim2016:~$ ls -al ~/.ssh
 </​code>​ Dacă sunt listate fișiere de tipul ''​id_rsa.pub''​ sau ''​id_dsa.pub'',​ acesta pot fi folosite, în caz contrar fiind necesară generarea acestora. </​code>​ Dacă sunt listate fișiere de tipul ''​id_rsa.pub''​ sau ''​id_dsa.pub'',​ acesta pot fi folosite, în caz contrar fiind necesară generarea acestora.
   - generarea unei chei SSH (plasată în ''​~/​.ssh/​id_rsa''​ în mod implicit) se face pe baza unei adrese de poștă electronică,​ respectiv a unei parole: <​code>​   - generarea unei chei SSH (plasată în ''​~/​.ssh/​id_rsa''​ în mod implicit) se face pe baza unei adrese de poștă electronică,​ respectiv a unei parole: <​code>​
-student@pdsd2015:~$ ssh-keygen -t rsa -C "pdsd2015@andreirosucojocaru.ro"+student@eim2016:~$ ssh-keygen -t rsa -C "informaticamobila2016@gmail.com"
 Generating public/​private rsa key pair. Generating public/​private rsa key pair.
 Enter file in which to save the key (/​home/​student/​.ssh/​id_rsa): ​ Enter file in which to save the key (/​home/​student/​.ssh/​id_rsa): ​
-Created directory '/​home/​student/​.ssh'​. 
 Enter passphrase (empty for no passphrase): ​ Enter passphrase (empty for no passphrase): ​
 Enter same passphrase again: ​ Enter same passphrase again: ​
Line 84: Line 82:
 Your public key has been saved in /​home/​student/​.ssh/​id_rsa.pub. Your public key has been saved in /​home/​student/​.ssh/​id_rsa.pub.
 The key fingerprint is: The key fingerprint is:
-84:5c:74:3d:dd:63:34:d5:78:f5:14:c6:97:62:91:c3 pdsd2015@andreirosucojocaru.ro+96:0a:59:ea:17:39:d7:12:98:8a:ee:e9:f7:16:20:ff informaticamobila2016@gmail.com
 </​code>​ </​code>​
   - cheia SSH generată trebuie indicată daemon-ului ''​ssh-agent'':​ <​code>​   - cheia SSH generată trebuie indicată daemon-ului ''​ssh-agent'':​ <​code>​
-student@pdsd2015:~$ eval "​$(ssh-agent -s)" +student@eim2016:~$ eval "​$(ssh-agent -s)" 
-Agent pid 6810 +Agent pid 4435 
-student@pdsd2015:~$ ssh-add ~/​.ssh/​id_rsa+student@eim2016:~$ ssh-add ~/​.ssh/​id_rsa
 Enter passphrase for /​home/​student/​.ssh/​id_rsa: ​ Enter passphrase for /​home/​student/​.ssh/​id_rsa: ​
 Identity added: /​home/​student/​.ssh/​id_rsa (/​home/​student/​.ssh/​id_rsa) Identity added: /​home/​student/​.ssh/​id_rsa (/​home/​student/​.ssh/​id_rsa)
 </​code>​ </​code>​
   - se vizualizează cheia SSH generată (''​cat ~/​.ssh/​id_rsa.pub''​) și se asociază contului GitHub   - se vizualizează cheia SSH generată (''​cat ~/​.ssh/​id_rsa.pub''​) și se asociază contului GitHub
-    - se accesează tab-ul //​Settings//​\\ {{ :​tutoriale:​git:​githubssh01.png?nolink&​700 ​}} +    - se accesează tab-ul //​Settings//​\\ {{ :​tutoriale:​git:​github08.png?nolink }} 
-    - din meniul afisat, se selectează opțiunea //SSH Keys// și apoi se apasă butonul //Add SSH Key//\\ {{ :​tutoriale:​git:​githubssh02.png?nolink&​700 ​}} +    - din meniul afisat, se selectează opțiunea //SSH Keys// și apoi se apasă butonul //New SSH Key//\\ {{ :​tutoriale:​git:​github09.png?nolink }} 
-    - se completează câmpurile //Title// (cu o denumire sugestivă a mașinii de pe care se dorește să se realizeze conexiunea) și //Key// (valoarea cheii SSH) și apoi se apasă butonul //Add key//\\ {{ :​tutoriale:​git:​githubssh03.png?nolink&​700 ​}} +    - se completează câmpurile //Title// (cu o denumire sugestivă a mașinii de pe care se dorește să se realizeze conexiunea) și //Key// (valoarea cheii SSH) și apoi se apasă butonul //Add SSH key//\\ {{ :​tutoriale:​git:​github10.png?nolink }} 
-    - valoarea introdusă va fi afișată în lista de chei SSH asociate contului\\ {{ :​tutoriale:​git:​githubssh04.png?nolink&​700 ​}}+    - valoarea introdusă va fi afișată în lista de chei SSH asociate contului\\ {{ :​tutoriale:​git:​github11.png?nolink }}
   - verificarea conectivității se face prin accesarea GitHub prin SSH, o configurare corectă fiind indicată de afișarea numelui de utilizator dorit <​code>​   - verificarea conectivității se face prin accesarea GitHub prin SSH, o configurare corectă fiind indicată de afișarea numelui de utilizator dorit <​code>​
-student@pdsd2015:~$ ssh -T git@github.com +student@eim2016:~$ ssh -T git@github.com 
-The authenticity of host '​github.com (192.30.252.131)' can't be established.+The authenticity of host '​github.com (192.30.252.129)' can't be established.
 RSA key fingerprint is 16:​27:​ac:​a5:​76:​28:​2d:​36:​63:​1b:​56:​4d:​eb:​df:​a6:​48. RSA key fingerprint is 16:​27:​ac:​a5:​76:​28:​2d:​36:​63:​1b:​56:​4d:​eb:​df:​a6:​48.
 Are you sure you want to continue connecting (yes/no)? yes Are you sure you want to continue connecting (yes/no)? yes
-Warning: Permanently added '​github.com,​192.30.252.131' (RSA) to the list of known hosts. +Warning: Permanently added '​github.com,​192.30.252.129' (RSA) to the list of known hosts. 
-Hi pdsd2015! You've successfully authenticated,​ but GitHub does not provide shell access.+Hi eim2016! You've successfully authenticated,​ but GitHub does not provide shell access.
 </​code>​ De asemenea, în lista cheilor SSH asociate contului GitHub, va fi indicată data la care aceasta a fost utilizată cel mai recent. </​code>​ De asemenea, în lista cheilor SSH asociate contului GitHub, va fi indicată data la care aceasta a fost utilizată cel mai recent.
tutoriale/git.1455010267.txt.gz · Last modified: 2016/02/26 00:27 (external edit)
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0