git switch va git checkout — tarmoqlar orasida yurish buyruqlari. Tarmoq yaratdingiz — endi unga o’tish kerak. git switch — bu vazifa uchun zamonaviy, aniq buyruq; git checkout esa eski, ko’p vazifali buyruq. Ikkovi ham tarmoq almashtiradi.
git switch / checkout — bir tarmoqdan boshqasiga o’tadigan buyruqlar.
switchfaqat tarmoqlar uchun (zamonaviy),checkoutesa tarmoq va fayllar uchun (eski).
git switch — tarmoqqa o’tish
git switch <nom> mavjud tarmoqqa o’tkazadi:
git switch yangi-funksiya
Switched to branch 'yangi-funksiya'
Endi yangi-funksiya tarmog’idamiz. Bu yerda qilingan barcha commit’lar faqat shu tarmoqqa yoziladi — main tegilmaydi.
Yaratish va o’tishni birlashtirish
git switch -c bir buyruqda tarmoq yaratadi va unga o’tadi:
git switch -c xato-tuzatish
Switched to a new branch 'xato-tuzatish'
-c (create) — yangi tarmoq yaratdi va darhol unga o’tdi. Bu git branch xato-tuzatish + git switch xato-tuzatish ning qisqa shakli — eng ko’p ishlatiladigan naqsh.
Amaliy ish jarayoni
To’liq tarmoq bilan ishlash jarayonini ko’ramiz:
git switch -c yangi-sahifa
# ... o'zgarishlar kiritamiz ...
git add .
git commit -m "Yangi sahifa qo'shildi"
git switch main
Switched to a new branch 'yangi-sahifa'
[yangi-sahifa e5f6a7b] Yangi sahifa qo'shildi
Switched to branch 'main'
Yangi tarmoqda ishlab, commit qildik, so’ng main ga qaytdik. main da bizning yangi commit yo’q — u faqat yangi-sahifa tarmog’ida. Bu — tarmoqlarning izolyatsiyasi.
switch va checkout
Ikki buyruqni jadvalda solishtiramiz:
| Buyruq | Vazifasi |
|---|---|
git switch nom |
tarmoqqa o’tadi |
git switch -c nom |
yaratadi va o’tadi |
git checkout nom |
tarmoqqa o’tadi (eski) |
git checkout -b nom |
yaratadi va o’tadi (eski) |
git checkout bir vaqtning o’zida ham tarmoq, ham fayl bilan ishlagani uchun chalkash edi. Zamonaviy Git uni ikkiga bo’ldi: git switch (tarmoq) va git restore (fayl). Yangi loyihalarda switch afzal.
Xulosa
Bu bo’limda git switch bilan tarmoqqa o’tish, -c bilan yaratib o’tish va checkout bilan farqini ko’rib chiqdik. Tarmoqlar orasida yurish — parallel ishlashning asosidir. Keyingi darsda git merge bilan tarmoqlarni birlashtirishga o’tamiz.