Git

De Viquipèdia
Salta a: navegació, cerca
Infotaula de programariGit
Git-logo.svg
Git clone.png
Git logo
Desenvolupador(s) Junio Hamano, Linus Torvalds, entre altres
Versió inicial 7 abril 2005
Versió estable

2.11.0

/ Novembre 29, 2016; fa 10 mesos (2016-11-29)
Versió prèvia 2.12 / Desembre 21, 2016; fa 9 mesos (2016-12-21)
Escrit en C, Bourne Shell, Tcl, Perl[1]
Sistema operatiu Linux, POSIX, Windows, OS X
Format d'arxiu de lectura git packfile
Format d'arxiu d'escriptura git packfile
Tipus Control de versions
Llicència GNU GPL v2
Part de Software Freedom Conservancy
Més informació
Lloc web git-scm.com
Codi font Codi font
Etiqueta d'Stack Exchange Stack Exchange
GitHub git
Modifica dades a Wikidata

Git és un programari de sistema de control de versions dissenyat per Linus Torvalds, pensat en l'eficiència i confiabilitat de manteniment de versions d'aplicacions amb una enorme quantitat de fitxers de codi font.

El disseny de Git es va basar en BitKeeper i en Monotone. En un principi, Git es va pensar com un motor de baix nivell que altres puguin emprar per escriure front end com Cogito o StGIT. Emperò, Git s'ha convertit des d'ençà en un sistema de control de versions amb funcionalitat plena. N'hi ha de molta rellevància que ja empren Git, en particular el grup de programació del nucli del sistema operatiu Linux.

Característiques[modifica | modifica el codi]

El disseny de Git resulta de l'experiència del dissenyador de Linux, Linus Torvalds, mantenint una enorme quantitat de codi distribuïda i gestionada per molta gent, que incideix en nombrosos detalls de rendiment, i de la necessitat de rapidesa en una primera implantació.

Entre les característiques més rellevants (no necessàriament positives) es troben:

  • Forta incidència en la no-linealitat dels canvis, per a la rapidesa en la gestió de ramificacions i mesclat de diferents versions.
  • Gestió distribuïda. Els canvis s'importen com a ramificacions, i poden ser mesclades en la manera en què ho fa una ramificació de l'emmagatzemament en local.
  • Els magatzems d'informació poden publicar-se per HTTP, FTP, SSH, rsync o mitjançant un protocol natiu, a part de ser possible emular CVS.

Gestió eficient de projectes grans, donada la rapidesa de gestió de diferències entre arxius, entre altres millores d'optimització de velocitat d'execució.

  • Totes les versions prèvies a un canvi determinat, impliquen la notificació d'un canvi posterior en qualsevol d'elles a aquest canvi (denominat autenticació criptogràfica d'historial). Això existia a Monotone.
  • Resulta una mica més car fer feina amb fitxers concrets enfront de projectes, el qual difereix de CVS, que fa feina basant-se en canvis de fitxer, però millora el treball amb afectacions de codi que concorren en operacions similars en diversos arxius.
  • Els reanomenats es treballen basant-se en similituds entre fitxers, a part de noms de fitxers, però no es fan marques explícites de canvis de nom basant-se en suposats noms únics de nodes de sistema de fitxers, el qual evita possibles, i possiblement desastroses, coincidències de fitxers diferents en un únic nom.
  • Re-emmagatzemament periòdic en paquets (fitxers). Això és relativament eficient per l'escriptura de canvis i relativament ineficient per lectura si el re-empaquetat (basant-se en diferències) no té lloc amb regularitat.

Referències[modifica | modifica el codi]

  1. «git/git.git/tree». git.kernel.org. [Consulta: 15 juny 2009].

Enllaços externs[modifica | modifica el codi]

A Wikimedia Commons hi ha contingut multimèdia relatiu a: Git Modifica l'enllaç a Wikidata

Tutorials[modifica | modifica el codi]