Hem passat a treballar amb ferramentes tipo Filezilla, més tard a sistemes de control de versions com CVS i, anys més tard, a SVN, Mercurial i altres. I des de fa tres anys he escoltat parlar sobre Git. Aquest article el faré servir a mode d'apunts, i pot ser el modificaré i l'ampliaré a mesurea que tinga la necessitat d'aprofundir.
Hi han dues maneres de començar a usar Git: una és començant a iniciar Git inicialitzant un directori amb git ini, i ja podem treballar com de costum afegint fitxers, fent commits, etc.
I l'altra manera és clonar un respositori existent amb git clone.
La manera més fàcil per a usar i comprendre el sistema de control de versions Git és – en la meua opinió - per una banda crear un repositori al conegut www.github.com i després, al nostre ordinador, crearem una còpia local clonant el nostre respositori. En en qüestió de 5 minuts ja ho tenim tot preparat i llest per a començar a controlar les versions dels nostres fitxers i scripts.
Vaig a donar per suposat que ja tenim instal·lat un client de Git al nostre ordinador (MacOsX, GNU/Linux, BSD, etc...) i també que ja tingues un compte a www.github.com i també tingues creat un repositori.
Doncs bé, com que volem sincronitzar la nostra còpia local amb el servidor via SSH, primer de tot, necessitem crear una clau SSH i donar-li la clau pública a GitHub per a que confie en nosaltres.
Per a crear una clau SSH, anirem al directori ocult ssh del nostre usuari:
cd ~/.ssh
Ara generem la clau amb:
ssh-keygen -t rsa -C "joan@riseup.net"
Ara, anem a la configuració del nostre gitHub i, a l'apartat 'Add SSH key' desem el contingut de id_rsa.pub al camp Field.
Ara modem provar l'accès amb:
$ ssh -T git@github.com
Hi joancatala! You've successfully authenticated, but GitHub does not provide shell access.
$
Ja tenim l'accès creat correctament.
Ara ja podem crear un directori amb:
mkdir el_nostre_repo
A continuació podem afegir tots els fitxers que vullgam.
Una vegada hem ficat els fitxers que volem, els afegim al repositori:
git add *
I ara fem el commit:
git commit -m 'Primer commit gran'
Fins ara, tot és molt semblant al Subversion.
Ara, finalment, li direm amb quin repositori existent volem connectar:
git remote add origin git@github.com:joancatala/evendejo.git
I ara pujem els fitxers amb push, que lo que fa aquest commando és pujar tots els commits que estiguen pendents i que encara no els he pujat al servidor (per a la teua informació, que sàpigues que podem treballar amb Git fins i tot sense internet, i tots els commits que fem es van enmagatzemant a una cua fins que fem el push):
git push origin master
Un altre dia, si volem afegir nous canvis, imatges o nous fitxers al nostre projecte, treballem com sempre, i quan vullguem ja afegir els canvis al repositori farem:
git -a -m "Nous canvis"
I per a pujar-los finalment:
git push origin master
Si tenim algun problema de versions, podem sobreescriure la versió que tenim al nostre respositori local que, per algun motiu, és distint al del servidor:
git fetch origin
Com pots veure, en qüestió de 5 minuts ja tens un directori local sincronitzat amb el repositori de GitHub.