Diferència entre revisions de la pàgina «Control de versions»
Salta a la navegació
Salta a la cerca
(Es crea la pàgina amb « == Introducció == Un sistema de control de versions ens permet: * Tenir un repositori de codi * Centralitzar els col·laboradors en un projecte comú * Facilita el cont…».) |
|||
Línia 2: | Línia 2: | ||
== Introducció == | == Introducció == | ||
Un sistema de control de versions ens permet: | Un sistema de control de versions ens permet: | ||
− | * Tenir un repositori de codi | + | * Tenir un repositori de codi (accés per xarxa) |
− | * Centralitzar els col·laboradors en un projecte comú | + | * Mantenir un seguiment de les versions dels arxius i projectes. |
− | * | + | * Còpia de seguretat i rollback (desfer canvis que no han prosperat). |
+ | * Centralitzar els col·laboradors en un projecte comú. | ||
+ | * Alguns (com el GitHub) faciliten el control del projecte amb objectius o fites (milestones) i incidències (issues) | ||
* | * | ||
Revisió del 12:12, 10 gen 2014
Introducció
Un sistema de control de versions ens permet:
- Tenir un repositori de codi (accés per xarxa)
- Mantenir un seguiment de les versions dels arxius i projectes.
- Còpia de seguretat i rollback (desfer canvis que no han prosperat).
- Centralitzar els col·laboradors en un projecte comú.
- Alguns (com el GitHub) faciliten el control del projecte amb objectius o fites (milestones) i incidències (issues)
Sistemes de control de versions:
- git
- Subversion (svn)
- Mercurial (hg)
- CVS (ha quedat obsolet)
- Razor
- ...
Treballarem amb GIT ja que disposem de la web GitHub.com que ens permet crear repositoris gratuïts si són públics. Si els volem privats s'ha de pagar.
També podríem instal·lar-nos el nostre propi servidor, però GitHub.com ofereix un servei de qualitat, eficient i obert a la comunitat de codi lliure, facilitant la difusió i col·laboració.
Conceptes
Alguns conceptes:
- Repositori: projecte base
- Col·laboradors: desenvolupadors participants en un projecte autoritzats a accedir al repositori.
- Branch: ="branca". Versió alternativa dins del mateix repo. Facilita el desenvolupament de diferents subparts del projecte sense interferir-se. Només disponible en escriptura per als usuaris autoritzats.
- Fork: ="forquilla". Clonació d'un projecte en un nou repositori. Similar al branch (facilita desenvolupaments paral·lels sense interferències) però no cal tenir autorització, ja que clonem el projecte al nostre espai.
- Merge: procés per unir dues branques o dos repositoris (fork). Pot produir inconsistències o incompatibilitats que cal administrar correctament.
- Pull request: el projecte original sol·licita als projectes forked que s'actualitzin, ja que hi ha hagut canvis.
- Trunk: branca principal d'un projecte.
Altres conceptes relacionats amb el management de projectes:
- Milestone: fita o objectiu (p.ex. sistema d'autenticació, importació d'arxius, etc.)
- Issue: pot ser una incidència (bug detectat) o bé una part d'un milestone, una petita fita a aconseguir. Per exemple: error en la càrrega d'arxius (bug), llibreria d'accés a la base de dades, formulari d'entrada i validació, etc.