SlideShare a Scribd company logo
1 of 16
Download to read offline
Introducció a Git
  Ramon Vilar Gavaldà
QUI SÓC

                                 ●   Soci fundador d'Ymbra
                                 ●   Desenvolupador Drupal
                                 ●   Desenvolupador frontend
                                 ●   Membre actiu de la
                                     comunitat drupalera:
 Ramon Vilar Gavaldà                 ●   President de Drupal.cat
 http://ymbra.com/blogs/ramon        ●   Administrador de la traducció
 http://twitter.com/rvilar
                                         catalana del Drupal
 http://drupal.org/user/293298

                                                                         2
ÍNDEX

01. QUÈ ÉS GIT?
02. CENTRALITZATS VS. DISTRIBUÏTS
03. CARACTERÍSTIQUES
04. ELS TRES ESTATS DE GIT
05. CONFIGURACIÓ BÀSICA
06. FLUX DIARI DE TREBALL
07. COMANDES ÚTILS
08. BRANQUES
09. REMOTS
                  Ymbra ­ Drupal dreamers   3
QUÈ ÉS GIT?

●   Git és un sistema de control de versions
    distribuït
●   Va néixer de les mans de Linus Torvalds
●   Es va concebre per poder mantenir el nucli de
    Linux després de trencar al 2005 amb
    BitKeeper




                      Ymbra ­ Drupal dreamers       4
CENTRALITZATS VS. DISTRIBUÏTS (I)

●   SCV centralitzats
    ●   Un “únic” repositori
    ●   Una única línia de treball




                          Ymbra ­ Drupal dreamers   5
CENTRALITZATS VS. DISTRIBUÏTS (I II)

●   SCV distribuïts
    ●   Cada usuari té com a mínim un repositori complet




                         Ymbra ­ Drupal dreamers           6
CARACTERÍSTIQUES (I)

●   Les característiques principals amb les que es
    va plantejar el Git són:
    ●   Velocitat
    ●   Disseny simple
    ●   Gran suport per al desenvolupament no
        lineal (amb suport per a milers de branques)
    ●   Completament distribuït
    ●   Capacitat per a gestionar grans projectes

                       Ymbra ­ Drupal dreamers         7
CARACTERÍSTIQUES (I II)

●   Algunes de les característiques intrínseques al
    Git són:
    ●   Git desa captures, no pas diferències
    ●   Quasi bé totes les operacions es fan en local
    ●   Git assegura la integritat
    ●   Git només afegeix dades (de forma general)



                       Ymbra ­ Drupal dreamers          8
ELS TRES ESTATS DEL GIT
●El flux de treball bàsic amb Git és
el següent:
    ●   Feu canvis als vostres fitxers al
        directori de treball.
    ●   Afegiu canvis al staging area.
    ●   Feu un commit, el qual agafa
        els fitxers tal i com estan a la
        staging area, i emmagatzema
        aquestes instantànies al
        directori del Git.




                                    Ymbra ­ Drupal dreamers   9
CONFIGURACIÓ BÀSICA

●   Abans de començar, cal identificar-nos-hi:
    git config --global user.name “Ramon Vilar”
    git config --global user.email “ramon@ymbra.com”
●   Es recomanable donar-li una mica de color a tot
    plegat:
    git config --global color.status auto
    git config --global color.branch auto
    git config --global color.diff auto
●   Si volem veure què tenim:
    git config --list

                        Ymbra ­ Drupal dreamers        10
FLUX DIARI DE TREBALL

●   Crear un repositori
    git init gittest
●   Veure l'estat del repositori
    git status
●   Afegir canvis al staging area
    git add <nom_fitxer 1> ... <nom_fitxer n>
●   Afegir canvis al repositori
    git commit

                       Ymbra ­ Drupal dreamers   11
COMANDES ÚTILS

●   “Eliminar” fitxers del repositori
    git rm <nom_fitxer>
●   Consultar històric de canvis
    git log
●   Eliminar els canvis fets al directori de treball
    git checkout -- <nom_fitxer>
    git checkout .
●   Afegir una etiqueta
    git tag <nom_etiqueta>
                        Ymbra ­ Drupal dreamers        12
BRANQUES

●   Serveixen per organitzar diverses versions del
    codi
●   Per crear una branca
    git branch <nom_branca>
●   Per canviar de branca
    git checkout <nom_branca>
●   Per unir/fondre dues branques
    git merge <nom_branca>


                      Ymbra ­ Drupal dreamers        13
REMOTS

●   Els repositoris remots són versions del nostre
    repositori que estan a la xarxa
●   Descarregar-nos el codi d'un remot (només un cop)
●   git clone http://git.drupal.org/project/drupal.git
●   Pujar canvis
    git push
●   Actualitzar amb els canvis fets (descarregar)
    git pull
●   Proves:    https://github.com/octocat/Spoon-Knife

                          Ymbra ­ Drupal dreamers        14
RECURSOS

●   Pro Git, Scott Chacon amb versió en línia
    http://progit.org/book
●   Llibre en línia de la comunitat http://book.git-scm.com
●   Bon model d'organització de branques
    http://ves.cat/a9ce
●   Pàgina oficial de Git http://git-scm.com
●   Bona referència per introducció a Git
    http://ves.cat/a9cg



                         Ymbra ­ Drupal dreamers              15
CONTACTEU


    ● Twitter: @rvilar
    ● Correu: ramon@ymbra.com

    ● Blog: http://ymbra.com/blogs/ramon

    ● Web: http://ymbra.com




    Gràcies a tots(es), preguntes?


                                           16

More Related Content

More from Ymbra

El universo JavaScript en Drupal 8
El universo JavaScript en Drupal 8El universo JavaScript en Drupal 8
El universo JavaScript en Drupal 8Ymbra
 
Arquitectura de proyectos Drupal
Arquitectura de proyectos DrupalArquitectura de proyectos Drupal
Arquitectura de proyectos DrupalYmbra
 
Migrate, una herramienta de trabajo y desarrollo
Migrate, una herramienta de trabajo y desarrolloMigrate, una herramienta de trabajo y desarrollo
Migrate, una herramienta de trabajo y desarrolloYmbra
 
Field Types API: Field, widgets y formatters
Field Types API: Field, widgets y formattersField Types API: Field, widgets y formatters
Field Types API: Field, widgets y formattersYmbra
 
Desarrollo y arquitectura de proyectos con Features
Desarrollo y arquitectura de proyectos con FeaturesDesarrollo y arquitectura de proyectos con Features
Desarrollo y arquitectura de proyectos con FeaturesYmbra
 
Distribuciones en Drupal
Distribuciones en DrupalDistribuciones en Drupal
Distribuciones en DrupalYmbra
 
Views 3: Qué hay de nuevo
Views 3: Qué hay de nuevoViews 3: Qué hay de nuevo
Views 3: Qué hay de nuevoYmbra
 
Drupal 7: mucho más que una nueva versión (para desarrolladores)
Drupal 7: mucho más que una nueva versión (para desarrolladores)Drupal 7: mucho más que una nueva versión (para desarrolladores)
Drupal 7: mucho más que una nueva versión (para desarrolladores)Ymbra
 
El universo JavaScript en Drupal 7
El universo JavaScript en Drupal 7El universo JavaScript en Drupal 7
El universo JavaScript en Drupal 7Ymbra
 
Drupal 7: mucho más que una nueva versión
Drupal 7: mucho más que una nueva versiónDrupal 7: mucho más que una nueva versión
Drupal 7: mucho más que una nueva versiónYmbra
 

More from Ymbra (10)

El universo JavaScript en Drupal 8
El universo JavaScript en Drupal 8El universo JavaScript en Drupal 8
El universo JavaScript en Drupal 8
 
Arquitectura de proyectos Drupal
Arquitectura de proyectos DrupalArquitectura de proyectos Drupal
Arquitectura de proyectos Drupal
 
Migrate, una herramienta de trabajo y desarrollo
Migrate, una herramienta de trabajo y desarrolloMigrate, una herramienta de trabajo y desarrollo
Migrate, una herramienta de trabajo y desarrollo
 
Field Types API: Field, widgets y formatters
Field Types API: Field, widgets y formattersField Types API: Field, widgets y formatters
Field Types API: Field, widgets y formatters
 
Desarrollo y arquitectura de proyectos con Features
Desarrollo y arquitectura de proyectos con FeaturesDesarrollo y arquitectura de proyectos con Features
Desarrollo y arquitectura de proyectos con Features
 
Distribuciones en Drupal
Distribuciones en DrupalDistribuciones en Drupal
Distribuciones en Drupal
 
Views 3: Qué hay de nuevo
Views 3: Qué hay de nuevoViews 3: Qué hay de nuevo
Views 3: Qué hay de nuevo
 
Drupal 7: mucho más que una nueva versión (para desarrolladores)
Drupal 7: mucho más que una nueva versión (para desarrolladores)Drupal 7: mucho más que una nueva versión (para desarrolladores)
Drupal 7: mucho más que una nueva versión (para desarrolladores)
 
El universo JavaScript en Drupal 7
El universo JavaScript en Drupal 7El universo JavaScript en Drupal 7
El universo JavaScript en Drupal 7
 
Drupal 7: mucho más que una nueva versión
Drupal 7: mucho más que una nueva versiónDrupal 7: mucho más que una nueva versión
Drupal 7: mucho más que una nueva versión
 

Introducció al Git

  • 1. Introducció a Git Ramon Vilar Gavaldà
  • 2. QUI SÓC ● Soci fundador d'Ymbra ● Desenvolupador Drupal ● Desenvolupador frontend ● Membre actiu de la comunitat drupalera: Ramon Vilar Gavaldà ● President de Drupal.cat http://ymbra.com/blogs/ramon ● Administrador de la traducció http://twitter.com/rvilar catalana del Drupal http://drupal.org/user/293298 2
  • 3. ÍNDEX 01. QUÈ ÉS GIT? 02. CENTRALITZATS VS. DISTRIBUÏTS 03. CARACTERÍSTIQUES 04. ELS TRES ESTATS DE GIT 05. CONFIGURACIÓ BÀSICA 06. FLUX DIARI DE TREBALL 07. COMANDES ÚTILS 08. BRANQUES 09. REMOTS Ymbra ­ Drupal dreamers 3
  • 4. QUÈ ÉS GIT? ● Git és un sistema de control de versions distribuït ● Va néixer de les mans de Linus Torvalds ● Es va concebre per poder mantenir el nucli de Linux després de trencar al 2005 amb BitKeeper Ymbra ­ Drupal dreamers 4
  • 5. CENTRALITZATS VS. DISTRIBUÏTS (I) ● SCV centralitzats ● Un “únic” repositori ● Una única línia de treball Ymbra ­ Drupal dreamers 5
  • 6. CENTRALITZATS VS. DISTRIBUÏTS (I II) ● SCV distribuïts ● Cada usuari té com a mínim un repositori complet Ymbra ­ Drupal dreamers 6
  • 7. CARACTERÍSTIQUES (I) ● Les característiques principals amb les que es va plantejar el Git són: ● Velocitat ● Disseny simple ● Gran suport per al desenvolupament no lineal (amb suport per a milers de branques) ● Completament distribuït ● Capacitat per a gestionar grans projectes Ymbra ­ Drupal dreamers 7
  • 8. CARACTERÍSTIQUES (I II) ● Algunes de les característiques intrínseques al Git són: ● Git desa captures, no pas diferències ● Quasi bé totes les operacions es fan en local ● Git assegura la integritat ● Git només afegeix dades (de forma general) Ymbra ­ Drupal dreamers 8
  • 9. ELS TRES ESTATS DEL GIT ●El flux de treball bàsic amb Git és el següent: ● Feu canvis als vostres fitxers al directori de treball. ● Afegiu canvis al staging area. ● Feu un commit, el qual agafa els fitxers tal i com estan a la staging area, i emmagatzema aquestes instantànies al directori del Git. Ymbra ­ Drupal dreamers 9
  • 10. CONFIGURACIÓ BÀSICA ● Abans de començar, cal identificar-nos-hi: git config --global user.name “Ramon Vilar” git config --global user.email “ramon@ymbra.com” ● Es recomanable donar-li una mica de color a tot plegat: git config --global color.status auto git config --global color.branch auto git config --global color.diff auto ● Si volem veure què tenim: git config --list Ymbra ­ Drupal dreamers 10
  • 11. FLUX DIARI DE TREBALL ● Crear un repositori git init gittest ● Veure l'estat del repositori git status ● Afegir canvis al staging area git add <nom_fitxer 1> ... <nom_fitxer n> ● Afegir canvis al repositori git commit Ymbra ­ Drupal dreamers 11
  • 12. COMANDES ÚTILS ● “Eliminar” fitxers del repositori git rm <nom_fitxer> ● Consultar històric de canvis git log ● Eliminar els canvis fets al directori de treball git checkout -- <nom_fitxer> git checkout . ● Afegir una etiqueta git tag <nom_etiqueta> Ymbra ­ Drupal dreamers 12
  • 13. BRANQUES ● Serveixen per organitzar diverses versions del codi ● Per crear una branca git branch <nom_branca> ● Per canviar de branca git checkout <nom_branca> ● Per unir/fondre dues branques git merge <nom_branca> Ymbra ­ Drupal dreamers 13
  • 14. REMOTS ● Els repositoris remots són versions del nostre repositori que estan a la xarxa ● Descarregar-nos el codi d'un remot (només un cop) ● git clone http://git.drupal.org/project/drupal.git ● Pujar canvis git push ● Actualitzar amb els canvis fets (descarregar) git pull ● Proves: https://github.com/octocat/Spoon-Knife Ymbra ­ Drupal dreamers 14
  • 15. RECURSOS ● Pro Git, Scott Chacon amb versió en línia http://progit.org/book ● Llibre en línia de la comunitat http://book.git-scm.com ● Bon model d'organització de branques http://ves.cat/a9ce ● Pàgina oficial de Git http://git-scm.com ● Bona referència per introducció a Git http://ves.cat/a9cg Ymbra ­ Drupal dreamers 15
  • 16. CONTACTEU ● Twitter: @rvilar ● Correu: ramon@ymbra.com ● Blog: http://ymbra.com/blogs/ramon ● Web: http://ymbra.com Gràcies a tots(es), preguntes? 16