GIT rövid története • A GIT legszembetűnőbb előnyei • A GIT által támogatott fejlesztési modellek • A GIT hibakeresési támogatása • A Frugalware a GIT verziókezelőre vált • Ajánlott irodalom
olvasási jog • Több szabadság a fejlesztőnek: – Offline commitok – „Commit early, commit often” • Implicit biztonsági mentés mindenki által (nincs „single point of failure”) • Szimmetrikus: nincs különbség a repók között • Mindenkinek van írási joga a saját repójába
fejlesztéséhez • 2005 április 6: A BitKeeper eltörli az ingyenes licencet, Linus a GIT megírásába kezd • 2005 április 18: Az első merge • 2005 június 16: A hivatalos kernelfejlesztéshez használatos SCM a GIT. • 2007 február: GIT 1.5.0 – igazi SCM
előnyei • Gyors. Felismerték, hogy a sebesség nem másodlagos! Bármilyen gyakran használt műveletet ha lassúnak érzünk, akkor bátran lehet reklamálni :) • „Do one thing and do it well.” - könnyen szkriptelhető • A projekt korábbi történetét lehetetlen észrevétlenül megváltoztatni. • GIT-SVN
• A doksi szépen fejlődik de még mindig nagyon nehéz elindulni (kb. egy hét szenvedés). • Windows támogatás még csak most éledezik. • Nagyon nagy tudású, az elején nehéz eligazodni, hogy „mi kell nekem és mi nem”. • Lista vége: kevés hátrány :)
egy központi repót használni, amennyiben az adott feladat azt kívánja (pl. fordításoknál) • Linus mód – mindenkinek van egy publikus repója, amiből bárki bármit átemelhet – sok fejlesztő esetén ez a modell jól skálázódik
keresése bináris kereséssel – interaktív: igen/nemmel válaszolunk, hogy a hiba jelentkezik-e – automatikus: egy adott parancs kimenetét nézi • pl. memóriahibák keresésénél hihetetlen hatékony • sokan kizárólag ezért képesek voltak belevágni a GIT használatába :)
verziókezelőt használtuk • Szép és jó volt, de „kinőttük”: nagy projektek esetén katasztrófálisan skálázódik (nálunk ezt 25000 patch környékén értük el) • Mikor alternatívát kerestünk, két szempont volt: – támogasson mindent, amit használtunk a Darcsból – legyen gyors
(se jobb, se rosszabb): – elosztott működés – első get/clone időigényes • Mi az. amit nyertünk: – még a legkritikusabb fejlesztők is meglepődtek a sebességen – egy tucat kényelmes funkció, ami nélkül ugyan lehet élni, de hatékonyabbá teszik a munkát • Átállás előkészítése kb. 1 hónap volt (sok idő!)
Every day with GIT: egy kedvcsináló, amely végre kihagyja az első körben érdektelen részleteket • User Manual: nem igazán hangsúlyozott, pedig ennek elolvasásával napokat spórolhatunk meg magunknak :)
nagy forgalmú, a kezdőknek türelmesen segítenek, a tapasztaltabbaktól sokat lehet tanulni • IRC csatorna: #git @ irc.freenode.net – segítőkészek, kezdeti triviális kérdésekben nagy segítség, de koránt sem biztos, hogy minden kérdésünkre választ kapunk