Git va GitHub

Git o'rnatish va sozlash

Git bilan ishlashni boshlashdan oldin uni kompyuteringizga o'rnatish va bir marta sozlash kerak. Bu darsda barcha operatsion tizimlar uchun o'rnatish yo'llarini, birinchi sozlamalarni va GitHub'ga xavfsiz ulanish uchun SSH kalitini yaratishni bosqichma-bosqich ko'rib chiqamiz.

Git o'rnatilganini tekshirish

Ba'zi tizimlarda (ayniqsa macOS va Linux'da) Git avvaldan o'rnatilgan bo'lishi mumkin. Shuning uchun avval tekshirib ko'ramiz. Terminal (buyruqlar qatori) oynasini oching va quyidagini yozing:

git --version

Agar Git o'rnatilgan bo'lsa, quyidagiga o'xshash javob chiqadi (raqamlar farq qilishi mumkin):

git version 2.43.0

Agar "command not found" yoki "buyruq topilmadi" kabi xato chiqsa, demak Git hali o'rnatilmagan โ€” quyidagi bo'limlardan o'z tizimingizga mos yo'riqnomani bajaring.

Terminal โ€” bu buyruqlarni matn ko'rinishida kiritadigan dastur. Windows'da "Command Prompt", "PowerShell" yoki Git bilan keladigan "Git Bash"; macOS'da "Terminal"; Linux'da esa "Terminal" deb ataladi.

Windows'ga o'rnatish

Windows uchun eng oson yo'l โ€” rasmiy o'rnatuvchini yuklab olish. git-scm.com/download/win manziliga kiring, o'rnatuvchi avtomatik yuklab olinadi. Uni ishga tushiring va bosqichlarni bajaring โ€” aksariyat sozlamalarni standart holatida qoldirish mumkin ("Next" tugmasini bosaverib).

O'rnatish tugagach, birga keladigan Git Bash dasturidan foydalanish qulay โ€” u Linux'dagi kabi terminal muhitini beradi. Muqobil sifatida winget paket menejeri orqali ham o'rnatish mumkin:

winget install --id Git.Git -e --source winget

Yoki Chocolatey paket menejeri o'rnatilgan bo'lsa:

choco install git
O'rnatish jarayonida "Adjusting your PATH environment" bosqichida standart variant ("Git from the command line and also from 3rd-party software") tanlangan bo'lsin โ€” shunda Git'ni istalgan terminaldan chaqira olasiz.

macOS'ga o'rnatish

macOS'da Git'ni o'rnatishning bir necha yo'li bor. Eng oddiy usul โ€” Xcode buyruqlar qatori vositalarini o'rnatishdir. Terminalda quyidagini yozing:

xcode-select --install

Ochilgan oynada "Install" tugmasini bosing. Bu Git bilan birga boshqa foydali dasturlash vositalarini ham o'rnatadi.

Agar Homebrew paket menejeri o'rnatilgan bo'lsa (ko'pchilik dasturchilar ishlatadi), eng yangi Git versiyasini quyidagicha o'rnatishingiz mumkin:

brew install git
Homebrew orqali o'rnatilgan Git odatda tizimdagidan yangiroq bo'ladi. Agar Homebrew hali o'rnatilmagan bo'lsa, brew.sh saytidagi ko'rsatmalarga amal qiling.

Linux'ga o'rnatish

Linux'da Git deyarli har doim tizimning paket menejeri orqali o'rnatiladi. Buyruq sizning distributivingizga bog'liq.

Ubuntu / Debian oilasi

sudo apt update
sudo apt install git

Fedora

sudo dnf install git

Arch Linux / Manjaro

sudo pacman -S git

openSUSE

sudo zypper install git

Bu yerda sudo โ€” buyruqni administrator huquqlari bilan bajarish uchun kerak; tizim sizdan parolingizni so'rashi mumkin.

O'rnatishdan so'ng barcha tizimlarda git --version buyrug'ini qayta bajarib, o'rnatish muvaffaqiyatli bo'lganiga ishonch hosil qiling.

Birinchi sozlash: ism va elektron pochta

Git o'rnatilgandan keyin qiladigan birinchi ishingiz โ€” o'zingizni tanishtirish. Har bir commit'ga uni kim yaratganini bildiruvchi ism va elektron pochta yozib qo'yiladi. Buni bir marta sozlab qo'ysangiz, keyin har bir commit'da avtomatik ishlatiladi.

git config --global user.name "Ali Valiyev"
git config --global user.email "ali@example.com"

Bu buyruqlarni tahlil qilaylik:

Ismingizni va pochtangizni tirnoq ichida yozing, ayniqsa ismda probel bo'lsa. GitHub'da ro'yxatdan o'tgan pochtangizni ishlatish tavsiya etiladi โ€” shunda commit'lar sizning GitHub profilingizga to'g'ri bog'lanadi.

Alohida bir loyiha uchun boshqa ism/pochta kerak bo'lsa, --globalsiz, o'sha repozitoriy ichida ishga tushiring โ€” u faqat shu loyihaga ta'sir qiladi:

git config user.email "ish.pochtam@company.com"

Foydali qo'shimcha sozlamalar

Ba'zi sozlamalar ish qulayligini oshiradi. Ular majburiy emas, lekin tavsiya etiladi.

Yangi repozitoriylarda asosiy tarmoq nomini main qilib belgilash (ba'zi eski Git versiyalari standart holatda master ishlatadi):

git config --global init.defaultBranch main

Git chiqaradigan matnlarni rangli qilish (o'qishni osonlashtiradi):

git config --global color.ui auto

Matn muharririni sozlash โ€” masalan, VS Code'ni Git uchun standart muharrir qilish:

git config --global core.editor "code --wait"
Windows va macOS/Linux o'rtasida fayllardagi qator oxiri belgilari (line endings) farq qiladi. Muammolarni oldini olish uchun Windows'da git config --global core.autocrlf true, macOS/Linux'da esa git config --global core.autocrlf input qo'yish tavsiya etiladi.

SSH kalit nima va nega kerak?

GitHub'ga kod yuborishning ikki asosiy usuli bor: HTTPS va SSH. HTTPS'da har safar (yoki token orqali) parol so'raladi. SSH esa kompyuteringizni GitHub'ga bir marta ishonchli tarzda bog'lab qo'yadi โ€” keyin har safar parol kiritish shart bo'lmaydi.

SSH kaliti โ€” juftlik ko'rinishida bo'ladi: maxfiy kalit (private key, kompyuteringizda qoladi, hech kimga bermaysiz) va ochiq kalit (public key, GitHub'ga qo'shasiz). Bular birgalikda sizni xavfsiz tanib olish imkonini beradi.

Maxfiy (private) kalitni hech qachon hech kimga bermang va internetga joylamang. Faqat ochiq (public, .pub bilan tugaydigan) kalitni GitHub'ga qo'shasiz.

SSH kalit yaratish (ssh-keygen)

SSH kaliti yaratish uchun quyidagi buyruqdan foydalanamiz. Pochta manzilini o'zingiznikiga o'zgartiring โ€” u shunchaki kalitga izoh (label) sifatida qo'shiladi:

ssh-keygen -t ed25519 -C "ali@example.com"

Buyruq qismlari:

Agar tizimingiz eski bo'lib, ed25519ni qo'llab-quvvatlamasa, muqobil sifatida quyidagini ishlating: ssh-keygen -t rsa -b 4096 -C "ali@example.com".

Buyruqni ishga tushirgach, u sizdan bir necha savol so'raydi:

Yaratilgach, ikki fayl paydo bo'ladi: id_ed25519 (maxfiy kalit) va id_ed25519.pub (ochiq kalit). Ochiq kalitni ekranga chiqarish uchun:

cat ~/.ssh/id_ed25519.pub

Natija ssh-ed25519 bilan boshlanadi va sizning pochtangiz bilan tugaydi. Butun shu satrni (bir qatordagi hammasini) nusxa oling โ€” u GitHub'ga qo'shiladigan ochiq kalitdir.

Ochiq kalitni GitHub'ga qo'shish

Endi ochiq kalitni GitHub hisobingizga qo'shamiz. Bu bosqich brauzerda bajariladi:

  1. GitHub'ga kiring va o'ng yuqoridagi profil rasmiga bosing;
  2. Settings (Sozlamalar) bo'limiga o'ting;
  3. Chap menyudan SSH and GPG keys ni tanlang;
  4. New SSH key tugmasini bosing;
  5. Title maydoniga kalitni tanib oladigan nom yozing (masalan, "Uy kompyuteri");
  6. Key maydoniga yuqorida nusxa olgan ochiq kalitni to'liq joylashtiring;
  7. Add SSH key tugmasini bosib saqlang.

Ulanish to'g'ri sozlanganini tekshirish uchun quyidagi buyruqni ishga tushiring:

ssh -T git@github.com

Birinchi marta u ishonch haqida so'rashi mumkin โ€” yes deb javob bering. So'ng quyidagiga o'xshash muvaffaqiyatli xabar chiqadi (foydalanuvchi nomingiz bilan):

Hi aliValiyev! You've successfully authenticated,
but GitHub does not provide shell access.
Bu xabardagi "does not provide shell access" ("terminalga kirish bermaydi") qismi xato emas โ€” bu normal holat. Muhim qismi "successfully authenticated" ("muvaffaqiyatli tasdiqlandi") degan iboradir.

Barcha sozlamalarni ko'rish: git config --list

Qilingan barcha sozlamalarni bir joyda ko'rish uchun:

git config --list

Bu buyruq barcha faol sozlamalarni kalit=qiymat ko'rinishida chiqaradi:

user.name=Ali Valiyev
user.email=ali@example.com
init.defaultbranch=main
color.ui=auto

Faqat bitta sozlama qiymatini bilmoqchi bo'lsangiz, uning nomini ko'rsating:

git config user.name

Global sozlamalar joylashgan faylni ko'rish uchun:

git config --list --show-origin
Global sozlamalar aslida uy papkangizdagi .gitconfig nomli oddiy matnli faylda saqlanadi. Uni istalgan matn muharririda ochib, qo'lda ham tahrirlash mumkin โ€” ammo yangi boshlovchilar uchun git config buyrug'idan foydalanish xavfsizroq.

Xulosa