Ací es mostren les diferències entre la revisió seleccionada i la versió actual de la pàgina.
Ambdós costats versió prèvia Revisió prèvia Següent revisió | Revisió prèvia | ||
vcs [2022/09/19 18:29] enrique_mieza_sanchez |
vcs [2023/09/26 15:33] (actual) enric_mieza_sanchez |
||
---|---|---|---|
Línia 50: | Línia 50: | ||
**Aquesta operació és delicada i implica refer tots els tests necessaris per assegurar-nos que el codi fusionat continua funcionant**. | **Aquesta operació és delicada i implica refer tots els tests necessaris per assegurar-nos que el codi fusionat continua funcionant**. | ||
- | {{ vcs-merge.png? | + | {{ vcs-merge.png? |
\\ | \\ | ||
Línia 59: | Línia 59: | ||
Exemples d' | Exemples d' | ||
- | {{vcs-centralitzat.png?300}} {{vcs-distribuit.png? | + | {{ vcs-centralitzat.png }} |
- | En canvi, un **sistema de control de versions | + | Per exemeple, quan un desenvolupador havia d' |
+ | |||
+ | ===== VCS distribuït ===== | ||
+ | |||
+ | {{ vcs-distribuit.png }} | ||
+ | |||
+ | En canvi, un **sistema de control de versions | ||
Exemples de sistemes de control de versions: | Exemples de sistemes de control de versions: | ||
Línia 79: | Línia 85: | ||
Git controla contingut, no arxius. Per tant, és molt fàcil esborrar, reanomenar sense avisar a Git, i l' | Git controla contingut, no arxius. Per tant, és molt fàcil esborrar, reanomenar sense avisar a Git, i l' | ||
+ | \\ | ||
+ | |||
+ | ===== Git (2) ===== | ||
Algunes dades de referència (del 2009): | Algunes dades de referència (del 2009): | ||
* Linux Kernel constava de 22.000 arxius. | * Linux Kernel constava de 22.000 arxius. | ||
Línia 87: | Línia 96: | ||
* En Git : 300 MB | * En Git : 300 MB | ||
+ | \\ | ||
- | ==== Com funciona Git ==== | + | ===== Com funciona Git ===== |
- | Mostrem en images | + | Mostrem en imatges |
- | ---- | + | {{ git1.png? |
- | {{git1.png }} | ||
Comencem desenvolupant un projecte en local. | Comencem desenvolupant un projecte en local. | ||
- | ---- | + | Prem abaix per seguir la seqüència: |
- | {{ git2.png}} | + | ==== Clonació ==== |
Un segon desenvolupador fa una còpia del nostre projecte. | Un segon desenvolupador fa una còpia del nostre projecte. | ||
- | ---- | + | {{ git2.png? |
- | {{git3.png }} | + | ==== Afegint codi ==== |
Cada desenvolupador segueix treballant individualment. | Cada desenvolupador segueix treballant individualment. | ||
- | ---- | + | {{ git3.png? |
- | {{ git4.png}} | + | ==== Més codi ==== |
Els canvis de cadascun no afecten l' | Els canvis de cadascun no afecten l' | ||
- | ---- | + | {{ git4.png?600 }} |
- | + | ||
- | {{git5.png }} | + | |
+ | ==== Fetch ==== | ||
El desenvolupador principal descarrega els canvis que ha fet el 2n desenvolupador. | El desenvolupador principal descarrega els canvis que ha fet el 2n desenvolupador. | ||
- | ---- | + | {{ git5.png? |
- | {{ git6.png}} | + | ==== Merge ==== |
- | ...i els barreja | + | Combina |
- | ---- | + | {{ git6.png? |
- | {{git7.png }} | + | ==== Fetch (2) ==== |
Finalment, el segon desenvolupador descarrega els canvis del primer, amb els seus propis canvis integrats. | Finalment, el segon desenvolupador descarrega els canvis del primer, amb els seus propis canvis integrats. | ||
- | ---- | + | {{ git7.png? |
- | + | ||
- | \\ | + | |
\\ | \\ | ||
Línia 137: | Línia 142: | ||
Disposar de Git és una gran cosa, però també cal seguir unes bones pràctiques a l'hora de crear i administrar les branques. | Disposar de Git és una gran cosa, però també cal seguir unes bones pràctiques a l'hora de crear i administrar les branques. | ||
+ | ===== Distribuït però centralitzat ===== | ||
+ | Amb **" | ||
- | ==== Distribuït però centralitzat | + | Un projecte en Git pot ser centralitzat |
- | Amb Git es sol utilitzar un esquema " | + | {{ centr-decentralized-vcs.png? |
- | O sigui, que un determinat projecte Git pot ser centralitzat per conveniència, | ||
- | {{centr-decentralized-vcs.png? | + | ===== Model exitós: git-flow ===== |
- | + | ||
- | + | ||
- | ==== Model exitós ==== | + | |
Fa 10 anys [[https:// | Fa 10 anys [[https:// | ||
+ | {{ hotfix-branches.png? | ||
- | {{ hotfix-branches.png? | + | ===== Caraterístiques del "git-flow" ===== |
- | En aquest | + | A l' |
- | | + | * Main branches, existeixen sempre |
- | * **master** : actualment | + | * **main** : abans es deia " |
- | * **develop** | + | * **develop** |
- | | + | |
- | * Feature branch | + | * Feature branch |
- | * Release branch : pre / pro | + | * Release branch : **pre** (preproducció) |
- | * Hotfix branch | + | * Hotfix branch |
- | + | ||
- | \\ | + | |
- | + | ||
- | \\ | + | |
- | + | ||
- | \\ | + | |
\\ | \\ |