Git nədir?
Git-i belə təsəvvür edin: bir sənəd üzərində işləyirsiniz və hər mühüm mərhələdə onun surətini ayrıca qovluğa yığırsınız ('v1', 'v2', 'son', 'ən son'). Git bunu avtomatik və nizamlı şəkildə edir: kodda edilən hər dəyişiklik 'commit' (yadda saxlanmış versiya) kimi qeyd olunur, kim, nə vaxt və nəyi dəyişdiyi tarixçədə qalır. İstənilən anda layihəni keçmiş vəziyyətinə qaytarmaq mümkündür.
Git 2005-ci ildə Linux əməliyyat sisteminin yaradıcısı Linus Torvalds tərəfindən hazırlanıb və hazırda böyük açıq mənbə icması tərəfindən inkişaf etdirilir. Pulsuz və açıq mənbəlidir (GPL-2.0 lisenziyası). Fərdi proqramçıdan tutmuş dünyanın ən böyük texnologiya şirkətlərinə qədər demək olar ki, bütün peşəkar proqram layihələri Git üzərində qurulur.
Komanda işində Git-in əsas gücü 'branch' (budaq) və 'merge' (birləşdirmə) mexanizmindədir. Hər proqramçı əsas koddan ayrılan öz budağında işləyir (məsələn, biri yeni səhifə hazırlayır, digəri xətanı düzəldir) və heç kim digərinin işini pozmur. İş bitəndə budaqlar əsas koda birləşdirilir. Bu, eyni faylın üstündə e-poçtla 'son_versiya_final2.zip' göndərmək xaosunu tamamilə aradan qaldırır.
Git-i GitHub, GitLab kimi platformalarla qarışdırmamaq lazımdır: Git kompüterdə işləyən alətdir, GitHub isə Git layihələrini internetdə saxlamaq və paylaşmaq üçün platformadır. Sadə müqayisə ilə: Git fotoaparatdır, GitHub isə şəkillərin yükləndiyi albom saytıdır. Layihənin kodu həm proqramçının kompüterində, həm də uzaq serverdə saxlanıldığı üçün kod itməsi riski minimuma enir.
Biznesiniz üçün nə deməkdir?
Sayt sahibi üçün Git sığorta deməkdir. Sayta edilən hər yenilik tarixçədə qalır: yeni funksiya problem yaradarsa, sayt dəqiqələr içində əvvəlki işlək versiyaya qaytarıla bilər. Həmçinin kod bir nəfərin kompüterində 'ilişib qalmır': sabah başqa proqramçı və ya studiya layihəni tam tarixçəsi ilə təhvil ala bilir.
SaytPro bundan necə istifadə edir?
SaytPro bütün layihələri, Next.js frontend-lərdən Django backend-lərə qədər, Git repozitoriyalarında saxlayır. Hər dəyişiklik commit-lərlə izlənir, yeni funksiyalar ayrıca branch-larda hazırlanıb yoxlanıldıqdan sonra əsas koda birləşdirilir. Canlı serverə yerləşdirmə (deploy) də Git üzərindən avtomatlaşdırılıb: kod təsdiqlənəndə server yeni versiyanı Git-dən çəkir, problem olarsa əvvəlki versiyaya qayıtmaq mümkündür.


