2-bo‘lim

Git ni o'rnatish va sozlash

Windows, macOS va Linux da Git ni o'rnatish, ism va emailni sozlash hamda birinchi buyruqlar bilan tanishish.

🕑 14 daqiqa o‘qish 📄 667 so‘z 👁 5 marta ko‘rilgan
Ushbu bo‘lim mundarijasi
  1. Windows ga o'rnatish
  2. macOS ga o'rnatish
  3. Linux ga o'rnatish
  4. Tekshirish
  5. Birinchi sozlash - ism va email
  6. Sozlamalar darajalari
  7. Barcha sozlamalarni ko'rish
  8. Muharrirni sozlash
  9. Asosiy tarmoq nomi
  10. Satr oxiri masalasi
  11. Ranglar va foydali sozlamalar
  12. Qisqartmalar (alias)
  13. Sozlama faylini to'g'ridan-to'g'ri tahrirlash
  14. Yordam olish
  15. Xulosa

Git ni ishlatishdan oldin uni o'rnatish va bir marta sozlash kerak.

Windows ga o'rnatish #

  1. git-scm.com/download/win saytiga kiring
  2. O'rnatuvchi avtomatik yuklanadi
  3. Faylni ishga tushiring

O'rnatish jarayonida bir necha savol beriladi. Muhimlari:

SavolTavsiya etilgan javob
Default editorNotepad++ yoki Sublime Text
Initial branch namemain (Override qilib tanlang)
PATH environment"Git from the command line and also from 3rd-party software"
Line ending conversions"Checkout Windows-style, commit Unix-style"
Terminal emulator"Use Windows' default console window"
Git Bash nima?

Windows uchun Git bilan birga Git Bash terminali ham o'rnatiladi. U Linux buyruqlarini (ls, cat, grep, pwd) Windows da ishlatish imkonini beradi.

Bu darslikdagi barcha misollar Git Bash da ishlaydi.

macOS ga o'rnatish #

Terminal
# Homebrew orqali
brew install git

# Yoki Xcode vositalari bilan
xcode-select --install

Linux ga o'rnatish #

Terminal
# Ubuntu, Debian
sudo apt update
sudo apt install git

# Fedora
sudo dnf install git

# Arch
sudo pacman -S git

Tekshirish #

Terminal
git --version
Natija
git version 2.45.2

Agar versiya ko'rinsa - o'rnatish muvaffaqiyatli.

"git is not recognized" xatosi

Windows da bu xato Git PATH ga qo'shilmaganini bildiradi.

Yechim: Git ni qayta o'rnating va "PATH environment" bosqichida o'rtadagi variantni tanlang. Yoki Git Bash terminalidan foydalaning - u yerda hamma vaqt ishlaydi.

Birinchi sozlash - ism va email #

Git har bir kommitga muallif ma'lumotini yozadi. Buni bir marta sozlaymiz:

Terminal
git config --global user.name "Husanboy Qodirov"
git config --global user.email "[email protected]"
Terminal
# Tekshirish
git config --global user.name
git config --global user.email
Natija
Husanboy Qodirov
[email protected]
Email ochiq ko'rinadi

Kommitdagi email hamma uchun ochiq bo'ladi. Ochiq loyihalarda shaxsiy emailingizni ishlatmaslik uchun GitHub bergan maxfiy manzilni qo'ying:

Terminal
git config --global user.email "[email protected]"

Bu manzilni GitHub sozlamalarining "Emails" bo'limida topasiz.

Sozlamalar darajalari #

Git sozlamalari uch darajada saqlanadi:

Quyidagilari yuqoridagilarni bekor qiladi --system Butun kompyuter uchun · /etc/gitconfig --global Foydalanuvchi uchun · ~/.gitconfig · eng ko'p ishlatiladi --local Faqat shu repozitoriy uchun · .git/config
Bitta repozitoriyda boshqa email ishlatish uchun --local ishlating
Terminal
# Ish loyihasida korporativ email
cd ~/ish/loyiha
git config user.email "[email protected]"

# Bu faqat shu papkada amal qiladi

Barcha sozlamalarni ko'rish #

Terminal
# Hammasi
git config --list

# Qaysi fayldan kelganini ham ko'rsatish
git config --list --show-origin

# Bitta sozlamani
git config user.name
Natija
user.name=Husanboy Qodirov
[email protected]
core.editor=notepad++ -multiInst -notabbar -nosession -noPlugin
init.defaultbranch=main
color.ui=auto

Muharrirni sozlash #

Git ba'zan matn muharririni ochadi (kommit xabari, merge izohi uchun). Standart holatda bu Vim bo'lishi mumkin - undan chiqish boshlovchilar uchun qiyin.

Terminal
# Notepad++
git config --global core.editor "'C:/Program Files/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"

# Sublime Text
git config --global core.editor "'C:/Program Files/Sublime Text/sublime_text.exe' -w"

# VS Code
git config --global core.editor "code --wait"

# Nano (Linux, macOS - eng soddasi)
git config --global core.editor "nano"
Vim ichida qolib ketsangiz

Agar tasodifan Vim ochilib qolsa:

  1. Esc tugmasini bosing
  2. :wq yozing va Enter bosing - saqlab chiqadi
  3. Yoki :q! - saqlamasdan chiqadi

Asosiy tarmoq nomi #

Ilgari standart tarmoq nomi master edi, hozir main ishlatiladi:

Terminal
git config --global init.defaultBranch main

Satr oxiri masalasi #

Windows da satr oxiri CRLF (\r\n), Linux va macOS da LF (\n). Bu farq tufayli fayl butunlay o'zgargandek ko'rinishi mumkin.

Terminal
# Windows uchun
git config --global core.autocrlf true

# macOS, Linux uchun
git config --global core.autocrlf input
SozlamaNima qiladi
trueKommitda LF ga, chiqarishda CRLF ga aylantiradi
inputKommitda LF ga aylantiradi, chiqarishda tegmaydi
falseHech nima qilmaydi
"Butun fayl o'zgaribdi"

Agar git diff da hech nima o'zgartirmagan fayl butunlay qizil-yashil bo'lib chiqsa - bu deyarli har doim satr oxiri muammosi.

Jamoada ishlayotgan bo'lsangiz, loyiha ildiziga .gitattributes fayl qo'ying:

Natija
* text=auto
*.sh text eol=lf
*.bat text eol=crlf

Bu sozlamani butun jamoa uchun bir xil qiladi.

Ranglar va foydali sozlamalar #

Terminal
# Rangli chiqish
git config --global color.ui auto

# Bekor qilingan fayllarni chiroyli ko'rsatish
git config --global core.pager "less -FRX"

# Push qilishda faqat joriy tarmoq yuborilsin
git config --global push.default simple

# Pull qilishda rebase ishlatilsin (keyingi bo'limlarda tushuntiriladi)
git config --global pull.rebase false

Qisqartmalar (alias) #

Uzun buyruqlarni qisqartirish mumkin:

Terminal
git config --global alias.st status
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.cm "commit -m"
git config --global alias.last "log -1 HEAD"
git config --global alias.tarix "log --oneline --graph --decorate --all"

Endi shunday yozish mumkin:

Terminal
git st          # git status
git cm "xabar"  # git commit -m "xabar"
git tarix       # chiroyli grafik tarix
O'zbekcha qisqartmalar

Qisqartma nomini istalgancha qo'yishingiz mumkin:

Terminal
git config --global alias.holat status
git config --global alias.saqla "commit -m"

Lekin jamoada ishlaganda standart nomlarni bilish shart - hujjatlar va maqolalarda ular ishlatiladi.

Sozlama faylini to'g'ridan-to'g'ri tahrirlash #

Terminal
git config --global --edit

Fayl shunday ko'rinadi:

INI
[user]
    name = Husanboy Qodirov
    email = [email protected]
[core]
    editor = nano
    autocrlf = true
[init]
    defaultBranch = main
[alias]
    st = status
    tarix = log --oneline --graph --decorate --all
[color]
    ui = auto
Bu faylni zaxira qiling

~/.gitconfig faylini nusxalab qo'ying. Yangi kompyuterda ishlashni boshlaganingizda uni ko'chirib qo'ysangiz - hamma sozlamalar joyida bo'ladi.

Ko'p dasturchilar bu faylni alohida "dotfiles" repozitoriysida saqlaydi.

Yordam olish #

Terminal
# To'liq qo'llanma
git help commit
git commit --help

# Qisqa yordam
git commit -h

# Barcha buyruqlar ro'yxati
git help -a
Natija
usage: git commit [-a | --interactive | --patch] [-s] [-v]
           [-u<mode>] [--amend] [--dry-run] [-c <commit> | -C <commit>]
           [-F <file> | -m <msg>] [--reset-author] [--allow-empty]
           ...
    -m, --message <message>
                          commit message
    -a, --all             commit all changed files
    --amend               amend previous commit
Amaliy topshiriq
  1. Git ni o'rnating va git --version bilan tekshiring.
  2. Ism va emailingizni --global darajada sozlang.
  3. init.defaultBranch ni main qilib qo'ying.
  4. O'zingizga qulay muharrirni sozlang.
  5. Windows da bo'lsangiz core.autocrlf ni true qiling.
  6. Kamida uchta qisqartma yarating.
  7. git config --list --show-origin ni ishga tushiring va sozlamalar qaysi fayllarda saqlanganini ko'ring.
  8. git help log buyrug'ini ishga tushiring va hujjatni ko'zdan kechiring.

Xulosa #

  • Git barcha operatsion tizimlar uchun bepul va rasmiy saytdan olinadi.
  • user.name va user.email - birinchi va majburiy sozlamalar.
  • Sozlamalar uch darajada: --system, --global, --local.
  • Quyi daraja yuqori darajani bekor qiladi.
  • Windows da core.autocrlf true satr oxiri muammosini hal qiladi.
  • alias bilan uzun buyruqlarni qisqartirish mumkin.
  • git help <buyruq> - istalgan buyruq haqida to'liq ma'lumot.

Keyingi bo'limda birinchi repozitoriyni yaratamiz va birinchi kommitni qilamiz.

Xatolik topdingizmi?

Imlo xatosi, ishlamaydigan kod yoki noto‘g‘ri ma‘lumotni ko‘rsangiz - bizga xabar bering. Har bir xabar administrator tomonidan ko‘rib chiqiladi.