Post on 28-May-2015
description
Mistela & Tweets
Microponéncia de Git
Autor: David Martínez Martí
Qué es git?
Es una utilitat que fa un seguiment dels canvis que fem als fitxers de un projecte, anotant qué s'ha canviat, qui ho ha fet i a quin hora. Permet provar versions antigues, evitant la nessecitat de backups diaris.
Aquest concepte es coneix com control de versions, també SCM (Source Control Management) o VCS (Version Control System)
Qué es git? (II)
● Manté un históric detallat de qué ha passat. Permet moures en el temps.
● Facilita el treball en grup. Modificar el mateix fitxer per dos persones a la vegada es posible.
● Es molt eficient en CPU, en espai de disc i en ample de banda.
● Cuasi tots els projectes de Soft.Lliure están migrant a Git o a Mercurial.
Instalar Git
– En Linux: están com a paquets del sistema● $ sudo aptget install gitgui gitk
– En Windows: es pot descarregar desde la web oficial● msysgit es un projecte alternatiu per a windows
Com funciona Git?
● Es una utilitat de consola. Pero existeixen GitK i GitGui que cobreixen el 99% dels usos més comuns.
● En la carpeta arrel del projecte executarem “git init” per a inicialitzar el control de versions. Creará dins una carpeta “.git” amb la base de dades de git.
Exemple de históric en GitK
Exemple de commit en GitGui
Perque deuríem d'usar Git?
● No es perd casi temps i els beneficis son molts● Evita que sobreescribim la feina accidentalment● Permet que dos equips treballen en paralel en el mateix
projecte i després unir els canvis● Permet depurar responsabilitats (qui ha fet que)● Ajuda a saber quan ha començat a fallar la aplicació● En definitiva, estalviem molt de temps de treball
Només es per a codi font?
Qualsevol carpeta amb principalment fitxers de text es pot portar amb Git, en totes les seves funcionalitats. Per fitxer de text entenem coses com html, bbcode, xml, ini, …
Git treballa a nivell binari. Les imatges i altres fitxers binaris no son problema, pero no tindrem sobre ells el control que tenim en els fitxers de text.
Els temporals i compilacions no es deuen de guardar en git.
Qué te Git que no tinga Subversion?
● Es un sistema distribuit (SVN es centralitzat)● No requerim de conexió per al 99% de les operacions● Facilitat per a mesclar versions i resoldre conflictes● SVN está orientat a carpeta compartida, Git está orientat a
projecte● Una menys espai de disc en la base de dades● La majoría de operacions son instantánees inclus en
projectes molt grans.
Com treballaríem en Git?
Alguna pregunta?