Mercurial

De Viquipèdia
Dreceres ràpides: navegació, cerca
Per a altres significats vegeu «Mercurial (planta)».

El Mercurial és un sistema de control de versions, que es caracteritza per portar la gestió de versions de forma descentralitzada. Es troba disponible a gran nombre de plataformes, com ara les UNIX com Linux, Windows i Mac OS X.

Està escrit principalment amb Python i fou creat per a ser emprat des de la línia d'ordres. Les aplicacions tenen noms que comencen amb hg, en referència al símbol químic del mercuri. Les seues principals característiques són, entre d'altres:

  • La seua rapidesa i capacitat d'adaptar-se a grans projectes
  • El seu ús permet no deprendre d'un servidor
  • El seu funcionament és completament distribuït
  • És robust tant en la gestió de fitxers ASCII com amb binaris
  • Té una gestió avançada de les branques i de les fusions
  • Té integrada una interfície web

Com altre programari, com el Git o el Monotone, utilitza una funció de resum SHA-1 per a identificar les versions. El seu protocol de xarxa es basa en HTTP.

El creador i principal desenvolupador és en Matt Mackall, que va posar a disposició de la comunitat el programa el 19 d'abril del 2005, pocs dies després que comencés el desenvolupament del Git. Es tracta de programari lliure sota una llicència lliure GNU GPL.

Actualment utilitzen aquest sistema gran nombre de projectes de codi obert a la xarxa, com ara MoinMon, Mozilla o OpenSolaris.

Ordres principals del Mercurial[modifica | modifica el codi]

Ordre Acció
add S'afegeix tots o una part dels fitxers en una propera confirmació de canvis (commit)
annotate Es mostra l'origen de cada línia diferent en un fitxer de text (autor, data, revisió...)
archive S'extreu unes versions sense les metadades d'un repositori
clone Es fa una còpia d'un repositori d'un projecte existent
commit (ci) Es confirma i enregistra una part o totes les modificacions locals en un repositori creant-se així una nova versió
diff Es calcula la diferència entre dues versions
export Es recuperen les capçaleres i les diferències d'una o diferents versions
init Es crea un repositori dins el directori donat com a paràmetre (l'actual si no s'especifica cap paràmetre)
log Es retorna l'historial de les versions d'un repositori sencer o d'uns fitxers donats
manifest Es retorna la llista dels fitxers continguts en una versió determinada
merge Es fusiona el directori de treball amb una altra versió
parents Es mostra els pares d'una versió de treball actual o d'una versió donada
pull Es recuperen els canvis d'un repositori donat
push S'exporten els canvis d'un repositori donat
remove (rm) Se suprimeixen tots o una part dels fitxers en una propera confirmació de canvis (commit)
revert Es reverteix a una versió donada de fitxers o de directoris
serve Es fa visible el contingut d'un repositori gràcies a l'HTTP
status (st) Es mostren els fitxers que han patit canvis en el directori de treball respecte al repositori
strip S'esborra una versió i totes les següents d'una branca donada
tag S'associa una etiqueta amb una versió donada
tags Es llisten totes les etiquetes d'un repositori
update (up/checkout/co) S'actualitza o es fusiona el directori de treball
verify Es verifica la integritat d'un repositori

Enllaços externs[modifica | modifica el codi]