Hi ha diverses maneres d’instal·lar Git per Windows. Una de les més senzilles inclou la instal·lació alhora de GIT i d’una interfície GUI per Github. L’avantatge és que només cal fer una descàrrega amb una instal·lacó molt senzilla.
Descarrega en aquest enllaç : https://desktop.github.com/
Git no és el mateix que GitHub
- Git és un programari de sistema de control de versions. Git a Viquipèdia
- GitHub és un servei de hosting de repositoris Git. GitHub a la Viquipèdia
En el meu cas tinc el sistema de control de versions Git i també un compte obert a Github. Aquest compte serveix també com a còpia del local.
Còpia de seguretat
Abans dels sistemes de controls de versions els programadors, bàsicament, fèiem una còpia de tots els fitxers del projecte i els guardàvem en un directori identificat per la data. Aquest sistema a l’engròs era barroer i no era més que una còpia de seguretat amb data. No era gaire pràctic perquè les còpies ocupaven molt d’espai (cada còpia era tot el directori sencer amb tots els seus fitxer!). També, dificultava molt comparar dues versions. Per comparar dues versions el calia mirar les dates de canvi dels fitxers i comparar cada fitxer un a un. Era un procediment que funcionava bé, sempre que el codi evolucionés en pocs fitxers, en una sola línia temporal i que el número de persones que feien aportacions al codi fossin poques (idealment una per fitxer). I a sobre, imagineu-vosel greu problema quan havies de recuperar una versió antiga setmanes després d’una modificació.
Sistemes de control de versions
Quan es van crear el primers sistemes de control de versions ens permetien fer un seguiment senzill i històric dels canvis del mateix fitxer. Els primers CSV’s eren un gran pas endavant perquè guardaven les dades com a modificacions del fitxer amb data i permetien afegir branques fàcilment. Per tant ara, un sistema de control de versions ens permet fer el seguiment dels canvis del codi d’un projecte de software fàcilment amb bifurcacions i tornades a la línia principal
- Permet guardar una versió (commit) de l’estat del projecte en qualsevol moment i recuper-la (checkout) sense perdre els canvis.
- Permet etiquetar (tag) els fitxers del projecte tal com estan en un moment donat amb una versió amb nom. Com ara ‘1.0’ o versió ‘inicial’.
- Facilita diverses modificacions de parts del codi o fer branques (branch). És a dir, cada branca és un conjunt de canvis en un o més fitxers independent del desenvolupament principal (main) que podrem fusionar de nou amb la resta del projecte (main).
- Conèixer l’estat del projecte (status i log ) en qualsevol moment. Saber quins fitxer s’han modificat (i en quines línies), saber els fitxers afegits, i, finalment, saber els fitxers esborrats.
Git
Un dels millor CVS és Git. Per utilitzar Git només cal utilitzar un directori qualsevol i dir-li a Git que faci un repositori. En un terminal, el comandament git status ens diu si és o no un repositori i sabrem si és un repositori de Git.
git status
Si el directori actual no té un repositori es pot iniciar amb ‘git init’.
git init
Si volem, en canvi copiar en un directori tots els fitxers d’un projecte remot podem fer-ho amb ‘git clone’. Per exemple, un projecte de Github es pot baixar amb el següent codi:
git clone https://github.com/USER-NAME/REPOSITORY-NAME
Ara, ja tenim un repositori local.
Per afegir nous fitxers al projecte podem utilitzar ‘git add’. Per afegir el fitxer FILENAME que està en el mateix directori.
git add ./FILENAME
Després d’afegir el nou fitxer està disponible pel commit. De moment està ‘staged’. Per incloure qualsevol modificacions que hàgim fet i, a més, el nou fitxer podem fer:
git add --all
git commit -m 'Afegit el fitxer FILENAME i altres modificacions'
El text darrere -m i entre cometes serà el nostre comentari.
Podem comprovar l’estat amb ‘git status’ i veure l’històric amb ‘git log‘. També podem veure els darrers canvis amb ‘git show HEAD’ , que ens mostra cada fitxer amb les seves modificacions i per tant pot ser força extens!
git show HEAD
Més compacte podem utilitzar ‘git log -n –oneline’. Per exemple, per veure els quatre darrers commits. Ens mostrarà només la línia del missatge per cadascun:
git log -4 -oneline
Evidentment ens estalviarem el terminal si utilitzem Github desktop.