Guia d’ús de GitLab

Aquesta pàgina descriu com utilitzar Git i Gitlab, amb exemples realitzats en gitlab-gie. Podeu complementar els vostres coneixements accedint a https://docs.gitlab.com/ee/gitlab-basics/.

Instal·lació i configuració de git en el vostre ordinador

Esquema de com treballar amb git

Com que Git és un sistema de control de versions distribuït, sempre treballareu localment al vostre ordinador, tenint tot el projecte sencer. Cal pensar que existeixen diferents còpies del projecte: una en cada ordinador i una altra en el servidor (per exemple, a gitlab-gie). La compartició de dades es realitza sempre a través de la còpia del servidor web Gitlab:

../../_images/flux.png

Clonar un projecte

El primer cop que vulgueu treballar amb un projecte de gitlab cal que en feu una còpia idèntica (clon) en el vostre ordinador. Per exemple,

  1. Visiteu la pàgina del projecte. En el nostre exemple, El-joc-del-profe.

  2. Cliqueu al botó + Clone i copieu la URL en format HTTPS ( https://gitlab-gie.cs.upc.edu/jocs/el-joc-del-profe.git, en aquest exemple).

  3. En el vostre ordinador, obriu una terminal d’ordres, aneu al directori de treball i executeu l’ordre git clone. Seguint l’exemple:

    cd directori_de_treball
    git clone  https://gitlab-gie.cs.upc.edu/jocs/el-joc-del-profe.git
    
  4. A partir d’aquest moment disposareu d’una còpia idèntica del dipòsit.

    En l’exemple anterior la còpia estarà al subdirectori el-joc-del-profe.

Flux de treball més habitual

  • Doneu-vos d’alta al servidor web de gitlab-gie.

  • Creeu un projecte nou al servidor web i doneu els permísos adients als memebres del grup de treball.

  • Cloneu el projecte en el vostre ordinador.

  • Detecteu un error, ampliació o qualsevol altre canvi que cal fer al projecte –> cal crear una issue al servidor web. Especifiqueu el problema, és una informació molt important!

    ../../_images/newissue.png
  • Quan un dels desenvolupadors del projecte vol resoldre la issue, crea un Merge request. Es crearà automàticament una branca del projecte, en estat draft:

    ../../_images/mergerequest.png
  • En el vostre ordinador, actualitzeu la còpia local, busqueu la branca de la issue i prepareu-vos per a treballar-hi:

    git fetch
    git status
    git checkout *id_de_la_branca*
    
  • Treballeu localment, modificant fitxers, afegint-ne o esborrant-ne. Podeu fer versions locals (checkpoints):

    git add .
    git rm *fitxer*
    git commit -m "explicació del què ha canviat"
    
  • Un cop heu resolt la issue, creeu una versió local i tot seguit actualitzeu la branca servidor web (pugeu-hi la informació):

    git status
    git push
    

    Després, al servidor web resoleu la issue. Cal esborrar l’estat draft i realitzar la fusió amb merge. La branca quedarà fusionada amb la branca principal (master):

    ../../_images/merge.png

    Podeu observar l’arbre de versions, amb les branques al servidor web.

  • En qualsevol moment, un desenvolupador pot actualitzar la seva còpia local amb la del servidor:

    git pull