Autor Wątek: Co to jest pakiet-git i w jaki sposób?  (Przeczytany 3451 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

pavbaranov

  • Administrator
  • Ekspert
  • *****
  • Wiadomości: 848
  • Reputacja +25/-0
  • Architektura: x86_64
  • DE/WM: KF5.16+Plasma5.4.95+KDEApps 15.11.80+git na KF5
  • Distro: Arch Linux
  • GPU: Radeon free
  • Kernel: 4.3 (BFQ/CK/BLD/UKSM/+optymalizacje)
Co to jest pakiet-git i w jaki sposób?
« dnia: Październik 28, 2014, 11:21:27 »
Swego czasu, w jednym z krakowskich liceów, zostało zadane pamiętne pytanie: co to jest góra i w jaki sposób? Pora odpowiedzieć. Nie, nie na to, co to góra, a tym bardziej w jaki sposób, ale na to, o co chodzi w magicznym słowie "git", które pojawia się w nazwach różnych programów.
W tym miejscu, proszę bardziej obznajomionych z gitem, o nieobsobaczanie mnie za bardzo skrótowe potraktowanie tematu. Nie mam zamiar tłumaczyć tego, czym jest git, svn, czy cokolwiek w tym stylu, a jedynie wyjaśnić do czego i komu służyć może oprogramowanie "git".

Zatem do dzieła.

W pewnym uproszczeniu, git to jedno z miejsc, gdzie umieszczane są kody źródłowe aplikacji otwarto źródłowych. Ten kto się czuje na siłach może dołączyć do rozwoju programu, może owe źródła zaczerpnąć i rozwijać swoją własną wersję, bądź też po prostu źródła te pobrać i skompilować z nich program, bibliotekę, czy co tam jeszcze. Oprócz git są jeszcze inne miejsca, gdzie znajdują się kody źródłowe, by wspomnieć dla przykładu: subversion (najczęściej zobaczycie w opisie bądź nazwie programu svn), bazaar, launchpad itd.
Kiedy program rozwijany przez deweloperów dojrzeje do jakiegoś zamierzonego celu, wypuszczany jest jako stabilna wersja i otrzymuje jakiś numer. Prace deweloperów rozwijane są nadal w owym git. Zatem po jakimś czasie, wersja w git może być wyposażona w jakieś nowe funkcjonalności, mogą być załatane jakieś błędy (choć tu najczęściej wydawana jest od razu poprawka do wersji stabilnej), może być dostarczona obsługa czegoś, czego w wersji stabilnej nie ma, może być jeszcze multum innych rzeczy, a może nie dziać się nic.
W Archu i jego rodzinie, w repozytoriach, najczęściej mamy do czynienia wyłącznie ze stabilnymi wersjami programów. Niemniej jednak, w AUR często pojawiają się wersje oparte właśnie o git, stanowiące migawkę z danego okresu uwzględniającą zmiany, jakie zaszły w programie w chwili, w której "paczka" w AUR się ukazała.

Co z tego wynika praktycznie?
Cóż, zrobię dekalog, choć nie sądzę, by miał aż dziesięć punktów.
Po pierwsze - jeśli nie musisz - używaj wersji z repozytorium (czyli "nie-git"). Masz większą pewność, że taki program, sterownik, kernel, czy cokolwiek będzie działać prawidłowo. Zanim znalazło się w repozytorium zostało poddane testom przez deweloperów zarówno tego programu, jak i deweloperów Archa.
Po drugie - wersję git używaj praktycznie wyłącznie wówczas, gdy musisz. Cóż, tutaj potrzebna jest Twoja aktywność. Pamiętaj zasadę: lepsze jest wrogiem dobrego. Zatem jeśli jakiś program Ci działa, sterownik obsługuje Twój sprzęt - nie zmieniaj na siłę go w wersję z git. Zmień, gdy program będzie działać źle, nie będzie go w wersji "nie-git" (tu przykład I-Nex, który w Archu rozwijany jest obecnie wyłącznie jako i-nex-git) lub też, gdy wersja z git będzie miała funkcjonalność, której potrzebujesz. Musisz to sam sprawdzić, prześledziwszy to co napisane. Cóż, niekiedy nie dowiesz się - bowiem będąc laikiem, poszczególne commity mogą być dla Was nieczytelne. Niekiedy będziemy w stanie odpowiedzieć, czy dana wersja z git rozwiąże Twój problem - niekiedy nie. Przecież sami niekoniecznie musimy mieć (i najczęściej nie mamy), taki sprzęt jak masz Ty i takie potrzeby. Niekiedy sami deweloperzy określają na stronach programów, że w wersjach rozwojowych dodane zostało określone rozwiązanie (np. SANE pokazuje także te urządzenia, które są obsługiwane w wersjach rozwojowych).
Po trzecie - generalnie te same zasady, jakie dotyczą wersji "xyz-git", dotyczą również wszelkich innych wersji rozwojowych programów (w AUR najczęściej zobaczycie dodatek do nazwy taki jak svn, dev itp.).
Po czwarte - to już powszechna uwaga - czytajcie PKGBUILDy! Okazać się bowiem może, że wersja git, którą chcecie zainstalować jest starszą wersją od tej, która jest dostępna w repozytorium.
Po piąte - pamiętajcie - wersji rozwojowych nikt nie testował. Nie ma żadnej gwarancji, że oprogramowanie, a tym bardziej jakiś sterownik będzie działać prawidłowo, w tym prawidłowo z pozostałą częścią systemu.

Już kojarzycie? Jeśli nie musicie - nie stosujcie git. Jeśli nie wiecie po co je stosować - nie stosujcie. Mniej problemów i dla Was i dla wszystkich innych. Jeśli zaś stosujecie, to w przypadku zakładania wątków piszcie, że stosujecie dane oprogramowanie, czy sterownik w wersji git i podawajcie jaką.

 

Polityka cookies
Darmowe Fora | Darmowe Forum
ppiz endercraft polskiedobrerpg gangpod kociaprzystan