GitHub nədir və necə istifadə olunur? Yeni başlayanlar üçün ətraflı GitHub bələdçisi

Proqramlaşdırma öyrənməyə başlayanların qarşısına gec-tez bir termin çıxır: GitHub. İş elanlarında GitHub bilikləri tələb olunur, proqramçılar hazırladıqları layihələri GitHub-da paylaşır, open-source layihələr burada inkişaf etdirilir və developer-lər eyni layihə üzərində birlikdə işləyirlər.
Bəs GitHub nədir, GitHub nə üçün istifadə olunur və yeni başlayan biri GitHub-dan necə istifadə edə bilər?
Sadə dillə desək, GitHub proqram təminatı layihələrinin saxlanması, dəyişikliklərin izlənməsi və developer-lərin eyni layihə üzərində əməkdaşlıq etməsi üçün istifadə edilən bulud əsaslı platformadır. GitHub Git versiya idarəetmə sistemi üzərində qurulub və layihələrin sadəcə saxlanmasını deyil, onların inkişaf prosesinin idarə olunmasını da asanlaşdırır.
GitHub-ın rəsmi sənədlərinə görə platforma layihənin planlaşdırılması, kodun hazırlanması, review edilməsi, test olunması, deploy edilməsi və sonrakı idarə olunması kimi software development mərhələlərini dəstəkləyir.
Bu səbəbdən GitHub yalnız “kod yükləmək üçün sayt” deyil. Müasir proqram təminatının hazırlanmasında ən geniş istifadə olunan əməkdaşlıq və kod idarəetmə platformalarından biridir.
GitHub nədir?
GitHub Git əsaslı repository-lərin internet üzərindən saxlanmasına və idarə edilməsinə imkan verən development platformasıdır.
Burada developer hazırladığı layihənin kodlarını saxlaya, dəyişiklikləri qeydə ala, əvvəlki versiyaları görə, digər developer-lərlə işləyə və layihəyə edilən dəyişiklikləri yoxlaya bilər.
Məsələn, bir veb sayt hazırladığınızı düşünün. Layihənin ilkin versiyasını tamamladınız. Daha sonra yeni login sistemi əlavə etdiniz, dizaynı dəyişdirdiniz və müəyyən xətaları aradan qaldırdınız.
Bütün bu dəyişiklikləri sadəcə:
project-final
project-final-new
project-final-new-2
kimi qovluqlarda saxlamaq əvəzinə Git və GitHub vasitəsilə sistemli formada idarə etmək mümkündür.
Hər mühüm dəyişiklik ayrıca qeydə alınır. Beləliklə, layihənin nə zaman və necə dəyişdiyini izləmək daha rahat olur.
Git və GitHub arasında fərq nədir?
Git və GitHub çox vaxt eyni anlayış kimi qəbul edilir, lakin əslində fərqli alətlərdir.
Git kompüterdə işləyən paylanmış versiya idarəetmə sistemidir. Git fayllarda edilən dəyişiklikləri izləyir, dəyişiklik tarixçəsini saxlayır və developer-lərə layihənin müxtəlif versiyaları ilə işləməyə imkan verir.
GitHub isə Git repository-lərini internet üzərində saxlamaq və digər insanlarla paylaşmaq üçün istifadə edilən platformadır.
Sadə nümunə ilə:
Git — dəyişiklikləri idarə edən sistemdir.
GitHub — həmin Git layihələrinin internetdə saxlandığı və komanda ilə idarə edildiyi platformadır.
GitHub Git-in funksiyalarını repository hosting, pull request, issue tracking, project management, code review və digər əməkdaşlıq imkanları ilə genişləndirir.
GitHub nə üçün istifadə olunur?
GitHub-ın istifadə sahəsi yalnız proqram kodlarının saxlanılması ilə məhdudlaşmır.
Developer-lər GitHub vasitəsilə layihələrinin mənbə kodunu saxlaya, dəyişikliklərin tarixçəsini izləyə, komandada işləyə, yeni funksiyalar üzərində ayrıca branch-lərdə çalışa və digər developer-lərin kodunu nəzərdən keçirə bilirlər. GitHub həmçinin open-source layihələr üçün mühüm platformadır. Açıq repository-lərə baxmaq, onların kodunu araşdırmaq və uyğun layihələrə töhfə vermək mümkündür.
Platforma portfolio yaratmaq üçün də istifadə edilir. Developer iş müraciəti zamanı hazırladığı real layihələri GitHub profilində göstərə bilər. Yaxşı strukturlaşdırılmış repository, aydın README və məntiqli commit tarixçəsi namizədin layihə üzərində necə işlədiyini göstərməyə kömək edir. GitHub bundan əlavə documentation, avtomatlaşdırılmış testlər, CI/CD prosesləri, release idarəetməsi və bəzi hallarda veb saytların yayımlanması üçün də istifadə edilə bilər.
GitHub repository nədir?
GitHub öyrənərkən bilməli olduğunuz ilk anlayışlardan biri repository, qısa formada isə repo sözüdür.
Repository layihənizə aid faylların və həmin faylların dəyişiklik tarixçəsinin saxlandığı yerdir. Məsələn, bir sayt hazırlayırsınızsa repository daxilində HTML, CSS, JavaScript faylları, şəkillər, konfiqurasiya faylları və layihə haqqında məlumat verən README faylı yerləşə bilər. GitHub-ın rəsmi Hello World təlimatında repository layihə ilə əlaqəli faylları və digər resursları bir yerdə saxlayan struktur kimi təqdim edilir. Repository yaradılarkən onun public və ya private olması müəyyən edilə bilər.
Public repository digər istifadəçilər tərəfindən görülə bilər.
Private repository isə yalnız icazə verilmiş istifadəçilər üçün əlçatan olur.

GitHub-da repository necə yaradılır?
GitHub hesabınıza daxil olduqdan sonra yeni repository yaratmaq kifayət qədər sadədir.
GitHub interfeysində New repository seçimini seçirsiniz, repository üçün ad müəyyən edirsiniz və qısa description əlavə edə bilərsiniz. Daha sonra repository-nin public və ya private olacağını müəyyənləşdirirsiniz. Yeni başlayanlar üçün repository yaradarkən README faylının əlavə edilməsi də faydalıdır. README layihənin əsas təqdimat sənədidir. Burada layihənin məqsədi, istifadə olunan texnologiyalar, quraşdırma qaydaları və istifadə təlimatları yerləşdirilə bilər.
Məsələn:
my-first-project
adlı repository yaradaraq ilk layihənizi GitHub-da saxlamağa başlaya bilərsiniz.
GitHub branch nədir və niyə istifadə olunur?
Branch repository-nin əsas koduna birbaşa müdaxilə etmədən layihənin ayrıca versiyası üzərində işləməyə imkan verir.
Adətən repository-nin əsas branch-i main adlanır.
Təsəvvür edin ki, hazırda işləyən bir saytınız var və yeni login funksiyası əlavə etmək istəyirsiniz.
Login üzərində birbaşa main branch-də işləmək riskli ola bilər. Buna görə:
feature-login
kimi ayrıca branch yaradılır. Bütün dəyişikliklər əvvəlcə həmin branch-də həyata keçirilir. Funksiya tamamlandıqdan və test edildikdən sonra dəyişikliklər main branch-ə birləşdirilə bilər. GitHub-ın Hello World bələdçisində də branch-lərin yeni xüsusiyyətləri əsas kodu dəyişdirmədən hazırlamaq və sınaqdan keçirmək üçün istifadə oluna biləcəyi göstərilir. Bu yanaşma xüsusilə böyük developer komandalarında çox vacibdir.
GitHub commit nədir?
Commit layihədə edilən dəyişikliklərin müəyyən bir nöqtədə qeydə alınmasıdır. Məsələn, saytın menyusunu dəyişmisiniz. Dəyişikliyi commit edərkən belə bir mesaj əlavə edə bilərsiniz:
Update mobile navigation
Başqa developer commit tarixçəsinə baxdıqda həmin dəyişiklikdə nə edildiyini daha rahat anlayır. Yaxşı commit mesajları layihənin tarixçəsini oxunaqlı edir.
change
və ya
update
kimi qeyri-müəyyən mesajlar əvəzinə:
Fix login validation error
Add contact form
Update homepage hero section
kimi konkret commit mesajlarından istifadə etmək daha məqsədəuyğundur. GitHub sənədlərində commit message-in dəyişikliklərin nə üçün edildiyini izah etdiyi və layihənin tarixçəsini anlamağı asanlaşdırdığı qeyd olunur.
GitHub pull request nədir?
Pull request bir branch-də edilən dəyişikliklərin yoxlanılması və başqa branch-ə birləşdirilməsi üçün göndərilən təklifdir.
Məsələn:
feature-login
branch-də login sistemi hazırlamısınız. İndi bu kodu main branch-ə əlavə etmək istəyirsiniz.
Bunun üçün pull request yaradırsınız. Digər developer-lər dəyişiklikləri görə, şərh yaza, düzəliş tələb edə və kodu təsdiqləyə bilərlər. GitHub pull request-i platformada əməkdaşlığın əsas hissələrindən biri kimi təqdim edir. Pull request zamanı iki branch arasındakı fərqləri görmək və merge-dən əvvəl dəyişiklikləri müzakirə etmək mümkündür.
Bu proses code review adlandırılan yanaşmanın vacib hissəsidir.

GitHub merge nədir?
Merge iki branch-dəki dəyişikliklərin birləşdirilməsi prosesidir.
Yeni funksiya feature branch-də hazırlandıqdan, pull request yaradıldıqdan və dəyişikliklər təsdiqləndikdən sonra həmin branch main ilə merge edilə bilər.
Nəticədə yeni kod əsas layihənin bir hissəsinə çevrilir.
Sadə workflow belə görünür:
Repository → Branch → Dəyişiklik → Commit → Pull Request → Review → Merge.
Bu axını başa düşmək GitHub istifadə etməyə başlayan hər bir developer üçün əsas biliklərdən biridir.
GitHub clone nədir?
Clone GitHub-da yerləşən repository-nin lokal kompüterə tam nüsxəsinin yüklənməsidir. Məsələn, GitHub-da mövcud olan layihə üzərində öz kompüterinizdə işləmək istəyirsiniz.
Terminal vasitəsilə belə bir əmrdən istifadə etmək mümkündür:
git clone repository-url
Bundan sonra repository-nin faylları kompüterinizə yüklənir və layihə üzərində lokal olaraq işləyə bilərsiniz. DEV Community-də təqdim olunan praktik GitHub workflow-da da repository fork edildikdən sonra lokal mühitdə işləmək üçün clone mərhələsindən istifadə edilir.
GitHub fork nədir?
Fork başqa istifadəçiyə və ya təşkilata məxsus repository-nin GitHub hesabınızda ayrıca nüsxəsinin yaradılmasıdır. Fork əsasən open-source layihələrə töhfə verərkən istifadə edilir. Məsələn, başqa developer-in yaratdığı open-source layihədə problem gördünüz və onu düzəltmək istəyirsiniz.
Repository-ni birbaşa dəyişdirmək əvəzinə onu fork edə bilərsiniz. Sonra öz fork versiyanızda dəyişiklik edirsiniz və əsas layihəyə pull request göndərirsiniz. Beləliklə, layihənin sahibi sizin dəyişikliklərinizi nəzərdən keçirərək onları qəbul və ya rədd edə bilər.
GitHub push və pull nə deməkdir?
GitHub ilə işləyərkən ən çox qarşılaşacağınız terminlər arasında push və pull da var. Push lokal kompüterinizdə etdiyiniz commit-ləri remote GitHub repository-sinə göndərməkdir.
Məsələn:
git push origin feature-login
əmri ilə feature branch-dəki dəyişiklikləri GitHub-a göndərmək mümkündür. Pull isə remote repository-dəki yeni dəyişiklikləri lokal repository-yə gətirmək üçün istifadə olunur.
Komanda ilə işləyərkən digər developer-lər repository-də dəyişiklik etmiş ola bilər. Pull əməliyyatı həmin yenilikləri kompüterinizdəki layihəyə gətirməyə kömək edir.
GitHub-a layihə necə yüklənir?
Yeni layihəni GitHub-a yerləşdirməyin müxtəlif yolları mövcuddur. Yeni başlayan istifadəçilər GitHub veb interfeysi və ya GitHub Desktop vasitəsilə işləyə bilərlər. Git ilə daha çox işlədikcə terminal istifadəsi daha praktik olur. Tipik terminal prosesi belədir:
git init
git add .
git commit -m "Initial commit"
git remote add origin REPOSITORY_URL
git push -u origin main
Burada git init layihəni Git repository-sinə çevirir.
git add . dəyişiklikləri növbəti commit üçün hazırlayır.
git commit həmin dəyişiklikləri tarixçəyə əlavə edir.
git remote add origin lokal layihəni GitHub repository-si ilə əlaqələndirir.
git push isə kodu GitHub-a göndərir.
GitHub Desktop nədir və yeni başlayanlar üçün uyğundurmu?
Terminaldan istifadə ilk mərhələdə çətin görünürsə, GitHub Desktop daha vizual alternativ ola bilər. GitHub Desktop repository clone etmək, branch yaratmaq, dəyişiklikləri görmək, commit etmək və push əməliyyatlarını qrafik interfeys üzərindən həyata keçirməyə imkan verir. Yeni başlayanlar əvvəlcə GitHub Desktop istifadə edərək Git məntiqini anlaya, daha sonra terminal əmrlərinə keçə bilərlər. Burada əsas məqsəd əmrləri əzbərləmək deyil. Repository, branch, commit, push, pull və merge kimi anlayışların necə əlaqəli olduğunu başa düşmək daha vacibdir.
GitHub proqramçılar üçün niyə vacibdir?
GitHub bilməyin üstünlüyü yalnız bir texnologiyanı öyrənmək deyil. Real development layihələrinin əksəriyyətində kod versiyalarının idarə olunması və komanda əməkdaşlığı tələb olunur. GitHub developer-ə hazırladığı layihələri strukturlaşdırmağa, dəyişiklikləri izləməyə və digər proqramçılarla daha sistemli işləməyə imkan verir. Eyni zamanda GitHub profili developer portfolio-sunun mühüm hissəsinə çevrilə bilər. Məsələn, GitHub profilində yalnız boş repository-lər əvəzinə real layihələr, yaxşı hazırlanmış README faylları və aydın commit tarixçəsi olduqda istifadəçinin iş prosesi haqqında daha çox məlumat əldə etmək mümkündür.
GitHub öyrənməyə haradan başlamaq lazımdır?
GitHub öyrənmək üçün ilk gündən mürəkkəb Git əmrlərinə keçməyə ehtiyac yoxdur. Əvvəlcə repository anlayışını öyrənmək və öz test repository-nizi yaratmaq daha effektivdir. Daha sonra branch yaradın, README faylında dəyişiklik edin və dəyişiklik üçün commit yaradın. Sonra həmin branch-dən pull request açaraq onu main branch ilə merge edin. Bu mərhələləri başa düşdükdən sonra clone, push, pull və fork kimi əməliyyatlara keçmək mümkündür. GitHub-ın rəsmi Hello World təlimatı da yeni başlayanları repository yaratmaq, branch açmaq, dəyişiklikləri commit etmək, pull request yaratmaq və sonda merge etmək mərhələlərindən keçirir. Bunun üçün ilkin mərhələdə proqramlaşdırma və ya command line biliyi belə tələb olunmur.
GitHub öyrənmək üçün hansı əsas terminləri bilmək lazımdır?
GitHub-a yeni başlayırsınızsa aşağıdakı anlayışların məntiqini başa düşmək kifayət qədər yaxşı başlanğıcdır:
Repository — layihənin faylları və tarixçəsinin saxlandığı yer.
Branch — layihənin ayrıca inkişaf xətti.
Commit — dəyişikliklərin qeydə alınmış versiyası.
Push — lokal dəyişikliklərin GitHub-a göndərilməsi.
Pull — GitHub-dakı dəyişikliklərin lokal layihəyə gətirilməsi.
Clone — repository-nin kompüterə kopyalanması.
Fork — başqa repository-nin hesabınızda ayrıca nüsxəsinin yaradılması.
Pull Request — dəyişikliklərin başqa branch-ə əlavə edilməsi üçün review sorğusu.
Merge — fərqli branch-lərin dəyişikliklərinin birləşdirilməsi.
README — layihənin nə olduğunu və necə istifadə edildiyini izah edən sənəd.
Bu terminləri praktikada bir neçə dəfə istifadə etdikdən sonra GitHub workflow-u daha aydın görünməyə başlayacaq.
GitHub yalnız proqramçılar üçündürmü?
Xeyr. GitHub əsasən software development ilə əlaqələndirilsə də, platformadan yalnız proqramçılar istifadə etmir. GitHub layihə menecerləri, data mütəxəssisləri, təhlükəsizlik komandaları, tədqiqatçılar və texniki sənədlərlə işləyən digər mütəxəssislər tərəfindən də istifadə edilə bilər. Rəsmi GitHub sənədləri də platformanın developer-lərlə yanaşı tələbələr, layihə menecerləri, security komandaları, data scientist-lər, tədqiqatçılar və müxtəlif təşkilati rollar tərəfindən istifadə edildiyini göstərir. Bunun səbəbi GitHub-ın yalnız kod saxlamaq deyil, fayllardakı dəyişiklikləri izləmək, layihələri idarə etmək və komanda əməkdaşlığını təşkil etmək üçün də imkanlar təqdim etməsidir.
GitHub öyrənmək çətindirmi?
İlk baxışda GitHub terminlərinin sayı çox görünə bilər. Repository, clone, commit, branch, pull request, merge, fork və push kimi terminlər yeni başlayan istifadəçi üçün qarışıq səslənir. Lakin onların hamısı vahid bir məntiqə əsaslanır:
Layihəni saxla → ayrıca branch-də işləyərək dəyişiklik et → dəyişiklikləri commit et → GitHub-a göndər → kodu review et → əsas layihəyə merge et. Bu workflow-u real kiçik layihə üzərində bir neçə dəfə tətbiq etdikdə GitHub istifadəsi daha rahat olur.
GitHub haqqında yekun olaraq nə bilmək lazımdır?
GitHub müasir proqram təminatı inkişafında kodun saxlanması, dəyişikliklərin izlənməsi və developer-lərin birlikdə işləməsi üçün istifadə olunan ən mühüm platformalardan biridir. Git və GitHub eyni şey deyil: Git versiya idarəetmə sistemidir, GitHub isə Git repository-lərini buludda saxlamağa və onlar üzərində əməkdaşlıq etməyə imkan verən platformadır.
GitHub öyrənməyə başlayan şəxsin ilk növbədə repository, branch, commit, push, pull request və merge anlayışlarını başa düşməsi tövsiyə olunur.
Daha sonra clone, fork və komanda workflow-larını öyrənərək real və open-source layihələrdə işləməyə keçmək mümkündür.
Proqramlaşdırma sahəsində karyera qurmaq, şəxsi layihələrinizi nümayiş etdirmək və komanda şəklində software development prosesinə qoşulmaq istəyirsinizsə, GitHub öyrənilməsi vacib alətlərdən biridir.
Proqramlaşdırma sahəsi ilə bağlı daha çox məqalə üçün Alas Academy məqalələrinə daxil olun.
