Git
Git | |
Autor inițial | Linus Torvalds[1] |
---|---|
Dezvoltator | Junio Hamano, Linus Torvalds |
Versiune inițială | [2] |
Ultima versiune | 2.47.1[3] () |
Repo | git.kernel.org/pub/scm/git/git.git |
Stare de dezvoltare | activă |
Scris în | C, Bourne Shell, Perl[4] |
Platformă | multi-platformă |
Disponibil în | limba engleză limba bulgară limba catalană limba franceză Limba indoneziană limba suedeză limba turcă limba ucraineană limba vietnameză chineză simplificată[*] Taiwanese Mandarin[*] |
Disponibil în română | nu |
Tip | Revision Control |
Licență | GNU General Public License |
Prezență online | |
https://git-scm.com/ | |
Modifică date / text |
Git este un sistem version control care rulează pe majoritatea platformelor, inclusiv Linux, POSIX, Windows și OS X. Ca și Mercurial, Git este un sistem distribuit și nu întreține o bază de date comună. Este folosit în echipe de dezvoltare mari, în care membrii echipei acționează oarecum independent și sunt răspândiți pe o arie geografică mare.
Git este dezvoltat și întreținut de Junio Hamano, fiind publicat sub licență GPL și este considerat software liber.
Dintre proiectele majore care folosesc Git amintim Amarok[5][6], Android[7], Arch Linux, Btrfs[8], Debian[9], DragonFly BSD[10], Eclipse[11], Fedora, FFmpeg [12], GIMP[13], GNOME[14][15], GTK+[16], Hurd[17], Linux kernel, Linux Mint[18][19], openSUSE[20], Perl[21], phpBB[22], Qt[23], rsync[24], Ruby on Rails[25], Samba[26].
Istorie
[modificare | modificare sursă]Dezvoltarea Git a început după ce mai mulți developeri ai nucleului Linux au ales să renunțe la sistemul de revision control proprietar BitKeeper.[27] Posibilitatea de a utiliza BitKeeper gratuit a fost retrasă după ce titularul drepturilor de autor a afirmat că Andrew Tridgell a încălcat licența BitKeeper prin acțiunile sale de inginerie inversă. La conferința Linux.Conf.Au 2005, Tridgell a demonstrat în timpul discursului său că procesul de inginerie inversă pe care l-a folosit a fost pur și simplu o sesiune telnet pe portul corespunzător al serverului BitKeeper și rularea comenzii help pe server.[28] Tot în această perioadă, și tot cu scopul de a înlocui BitKeeper, a fost creat sistemul Mercurial.
Torvalds dorea un sistem distribuit pe care să-l folosească cum folosea BitKeeper, dar niciunul din sistemele libere disponibile nu îi satisfăcea necesitățile. El a dat ca exemplu faptul că un sistem de management al controlului surselor are nevoie de 30 de secunde ca să aplice un patch și să actualizeze toate metadatele asociate, și a făcut observația că așa ceva nu poate scala la nevoile de dezvoltare ale comunității kernelului Linux, unde sincronizarea cu ceilalți dezvoltatori poate necesita 250 de astfel de acțiuni simultan. Ca criteriu de design, el a specificat că aplicarea de patch trebuie să nu dureze mai mult de trei secunde, precum și alte trei obiective:[29]
- Se ia Concurrent Versions System (CVS) ca exemplu de cum să nu; în caz de nesiguranță, se va lua decizia exact opusă celei luate de echipa CVS..[30]
- Să suporte un workflow distribuit, similar lui BitKeeper.[30]
- Să includă elemente de siguranță foarte puternice împotriva coruperii datelor, fie accidentală, fie prin acțiuni malițioase.[31]
Aceste criterii au eliminat toate sistemele de control al versiunilor utilizate la acea dată, astfel că, imediat după release-ul variantei de dezvoltare 2.6.12-rc2 a kernelului Linux, Torvalds s-a apucat să scrie el unul.[30]
Dezvoltarea noului sistem a fost începută de Linus Torvalds în 3 aprilie 2005[32] pentru a fi anunțat câteva zile mai târziu (aprilie 6) pe lista de email a proiectului Linux kernel[33]. O zi mai târziu, noul sistem a început să fie folosit pentru dezvoltarea actuală de cod pentru proiectul Git.[32] Primele operații merge a avut loc pe data de 18 aprilie.[34] În data de 16 iunie, versiunea 2.6.12 Linux kernel a fost pusă în Git[35] care continuă și în ziua de azi să fie sistemul revision control folosit de proiectul Linux kernel.
Denumirea
[modificare | modificare sursă]Torvalds a glumit sarcastic despre numele git (care înseamnă „persoană neplăcută” în argoul englezei britanice): „sunt un nesuferit egoist, și botez toate proiectele mele după mine însumi. Mai întâi 'Linux', acum 'git'.”[36][37] Pagina de manual descrie Git ca „tracker stupid de conținut”.[38]
Fișierul read-me al codului sursă detaliază:[39]
„git” poate însemna orice, în funcție de dispoziția de moment.
- Combinație aleatoare de trei litere care este pronunțabilă și nefolosită de nicio altă comandă UNIX. Faptul că este o scriere greșită a lui „get” poate sau nu să fie relevant.
- Stupid. Mizerabil și demn de dispreț. Simplu. Alegeți ce vreți din dicționarul de argou.
- „Global information tracker”: dacă ești într-o dispoziție bună, și dacă îți convine. Îngerii cântă, și camera este umplută brusc de lumină.
- „Goddamn idiotic truckload of sh*t”: când se strică.
Codul sursă al lui Git denumește programul „the information manager from hell”.
Referințe
[modificare | modificare sursă]- ^ https://web.archive.org/web/20151116175401/https://github.com/git/git/commit/e83c5163316f89bfbde7d9ab23ca2e25604af290 Lipsește sau este vid:
|title=
(ajutor) - ^ https://marc.info/?l=git&m=117254154130732 Lipsește sau este vid:
|title=
(ajutor) - ^ Junio C Hamano[*] (), [ANNOUNCE] Git v2.47.1 (în engleză), accesat în
- ^ „git/git.git/tree”. git.kernel.org. Arhivat din original la . Accesat în .
- ^ Getting Started/Sources/Amarok Git Tutorial - KDE TechBase
- ^ „amarok in kde-developers - Gitorious”. Arhivat din original la . Accesat în .
- ^ „Using Repo and Git (Android Open Source Project)”. Arhivat din original la . Accesat în .
- ^ „Btrfs source repositories - btrfs Wiki”. Btrfs.wiki.kernel.org. Accesat în .
- ^ git.debian.org Git
- ^ TypicalGitUsage - dragonflywiki[nefuncțională]
- ^ „WTP Incubator using Git”. Arhivat din original la . Accesat în .
- ^ „Get FFmpeg”. Ffmpeg.org. Accesat în .
- ^ The GIMP Development Team. „GIMP Developer Resources”. Arhivat din original la . Accesat în .
- ^ Lucas Rocha. „Mailing List Announcement”. Accesat în .
GNOME to migrate to git version control system...
- ^ Git - GNOME Live!
- ^ „GTK+ - Download”. Arhivat din original la . Accesat în .
- ^ source repositories
- ^ The Linux Mint Blog » Blog Archive » Mint to use Launchpad for translations, bugs, blueprints and github for code hosting and version control
- ^ DistroWatch.com: Put the fun back into computing. Use Linux, BSD
- ^ „openSUSE - Gitorious”. Arhivat din original la . Accesat în .
- ^ Léon Brocard. „Mailing List Announcement”. Accesat în .
The Perl Foundation has migrated Perl 5 to the Git version control system...
- ^ phpBB (). „phpBB moves source code versioning from Subversion to Git”. phpBB Group. Accesat în .
- ^ „Qt now open for community contributions”. . Accesat în .
- ^ git.samba.org - rsync.git/summary, git.samba.org
- ^ „"Rails is moving from SVN to Git"”. Arhivat din original la . Accesat în .
- ^ Using Git for Samba Development - SambaWiki
- ^ Feature: No More Free BitKeeper | KernelTrap.org
- ^ Jonathan Corbet (). „How Tridge reverse engineered BitKeeper”. Linux Weekly News.
- ^ Eroare la citare: Etichetă
<ref>
invalidă; niciun text nu a fost furnizat pentru referințele numitekernel_SCM_saga
- ^ a b c Eroare la citare: Etichetă
<ref>
invalidă; niciun text nu a fost furnizat pentru referințele numitelinusGoogleTalk
- ^ Eroare la citare: Etichetă
<ref>
invalidă; niciun text nu a fost furnizat pentru referințele numiteintegrity_goals
- ^ a b Linus Torvalds (). „Re: Trivia: When did git self-host?”.
- ^ Linus Torvalds (). „Kernel SCM saga.”.
- ^ Linus Torvalds (). „First ever real kernel git merge!”.
- ^ Linus Torvalds (). „Linux 2.6.12”.
- ^ „GitFaq: Why the 'Git' name?”. Git.or.cz. Arhivat din original la . Accesat în .
- ^ „After controversy, Torvalds begins work on 'git'”. PC World. . Arhivat din original la .
Torvalds seemed aware that his decision to drop BitKeeper would also be controversial. When asked why he called the new software, 'git', British slang meaning 'a rotten person', he said. 'I'm an egotistical bastard, so I name all my projects after myself. First Linux, now git.'
- ^ „git(1) Manual Page”. Arhivat din original la . Accesat în .
- ^ „Initial revision of 'git', the information manager from hell · git/git@e83c516”. GitHub. Arhivat din original la . Accesat în .
Legături externe links
[modificare | modificare sursă]Wikibooks are o carte despre subiectul: Source Control Management With Git |
- en Git Homepage
- en An introduction to git-svn for Subversion/SVK users and deserters Arhivat în , la Wayback Machine., article by Sam Vilain
- en Easy Git - a wrapper script for Git, presenting a simplified user interface, designed to be more accessible to users of other revision control systems.
- en git by example Arhivat în , la Wayback Machine. - simple walk through of common git commands
- en Git for computer scientists explains how Git conceptually works
- en Git for Subversion users
- en Git Magic - a comprehensive listing of Git tips & tricks, popularly referred to as "magic". Describes some of the lesser known features of Git.
- en Why Git is Better Than X Arhivat în , la Wayback Machine. - evangelist site comparing Git to Mercurial, Bazaar, Subversion and Perforce
- en Git Quick Reference Arhivat în , la Wayback Machine.
- en All about Git on one page - a page covering Git, starting with theory and ending with many practical examples about its usage.
- en Google Tech Talk - Linus Torvalds on Git
|