Skip to content

ozodbekphp/Gitlab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

🦊 GitLab Comandalari — To'liq Qo'llanma

GitLab asosan Git buyruqlari orqali boshqariladi. Quyida eng ko'p ishlatiladigan comandalar, ularning vazifasi va qo'llanish holatlari keltirilgan.


📁 1. Repozitoriyani Klonlash

git clone https://gitlab.com/username/project-name.git

Nima qiladi: GitLab'dagi loyihani (repozitoriyani) o'z kompyuteringizga yuklab oladi.

Qachon ishlatiladi:

  • Yangi loyihada ishlashni boshlaganda
  • Jamoaning repozitoriyasiga qo'shilganda
  • Biror open-source loyihani o'rganmoqchi bo'lganda

🔧 2. Git Sozlamalari

git config --global user.name "Ismingiz"
git config --global user.email "email@example.com"

Nima qiladi: Git commitlaringizga ism va email biriktiradi.

Qachon ishlatiladi:

  • Git'ni birinchi marta o'rnatganda
  • Yangi kompyuterda ishlashni boshlaganda

🌿 3. Branch (Tarmoq) Boshqaruvi

# Mavjud branchlarni ko'rish
git branch

# Yangi branch yaratish
git branch feature/yangi-funksiya

# Branchga o'tish
git checkout feature/yangi-funksiya

# Yaratish va o'tish (qisqacha)
git checkout -b feature/yangi-funksiya

# Zamonaviy usul (Git 2.23+)
git switch -c feature/yangi-funksiya

Nima qiladi: Loyihaning alohida "nusxasida" ishlash imkonini beradi.

Qachon ishlatiladi:

  • Yangi feature (funksiya) qo'shayotganda
  • Bug fix qilayotganda
  • Eksperiment o'tkazayotganda
  • main/master branchni buzmasdan ishlash kerak bo'lganda

➕ 4. O'zgarishlarni Saqlash (Stage & Commit)

# O'zgargan fayllarni ko'rish
git status

# Barcha fayllarni stage qilish
git add .

# Bitta faylni stage qilish
git add fayl_nomi.py

# Commit qilish
git commit -m "feat: login sahifasi qo'shildi"

# Stage + commit (tracked fayllar uchun)
git commit -am "fix: xato tuzatildi"

Nima qiladi: O'zgarishlarni Git tarixiga yozib qo'yadi.

Qachon ishlatiladi:

  • Kod yozgandan so'ng har bir mantiqiy qism tugaganda
  • Commit xabari aniq va qisqa bo'lishi kerak

🚀 5. GitLab'ga Yuborish (Push)

# Branchni GitLab'ga yuborish
git push origin feature/yangi-funksiya

# Birinchi marta push (upstream o'rnatish)
git push -u origin feature/yangi-funksiya

# Main branchga push
git push origin main

Nima qiladi: Mahalliy commitlarni GitLab serveriga yuboradi.

Qachon ishlatiladi:

  • Kod yozib bo'lingandan keyin
  • Merge Request ochishdan oldin
  • Jamoaga o'zgarishlarni ko'rsatish kerak bo'lganda

⬇️ 6. Yangilanishlarni Olish (Pull & Fetch)

# Fetch (faqat ko'rish, qo'llamasdan)
git fetch origin

# Pull (olish va birlashtirish)
git pull origin main

# Rebase bilan pull
git pull --rebase origin main

Nima qiladi: GitLab'dagi eng so'nggi o'zgarishlarni mahalliy kompyuteringizga oladi.

Qachon ishlatiladi:

  • Ish boshlashdan oldin (har kuni)
  • Jamoa a'zolari yangi kod qo'shganda
  • Merge conflict oldini olish uchun

🔀 7. Merge (Birlashtirish)

# Main branchga o'tish
git checkout main

# Feature branchni merge qilish
git merge feature/yangi-funksiya

# Fast-forward bo'lmagan merge
git merge --no-ff feature/yangi-funksiya

Nima qiladi: Bir branchning o'zgarishlarini boshqa branchga qo'shadi.

Qachon ishlatiladi:

  • Feature tayyor bo'lganda
  • Bug fix tugaganda
  • GitLab'da Merge Request (MR) approve bo'lgandan keyin

🍒 8. Cherry-pick

git cherry-pick <commit-hash>

Nima qiladi: Faqat bitta commitni boshqa branchga ko'chiradi.

Qachon ishlatiladi:

  • Faqat bitta o'zgarish kerak bo'lganda
  • Xato commitni boshqa branchga olish kerak bo'lganda

⏪ 9. O'zgarishlarni Bekor Qilish

# Oxirgi commitni bekor qilish (o'zgarishlar saqlanadi)
git reset --soft HEAD~1

# Oxirgi commitni to'liq bekor qilish
git reset --hard HEAD~1

# Faylni oxirgi commit holatiga qaytarish
git restore fayl_nomi.py

# Commitni "qaytaruvchi" yangi commit yaratish
git revert <commit-hash>

Nima qiladi: Noto'g'ri commitlar yoki o'zgarishlarni ortga qaytaradi.

Qachon ishlatiladi:

  • Xato commit qilinganda
  • O'zgarishni bekor qilish kerak bo'lganda
  • revert — umumiy branchlarda xavfsizroq

📋 10. Log va Tarix Ko'rish

# Commit tarixini ko'rish
git log

# Qisqa ko'rinish
git log --oneline

# Grafik ko'rinish
git log --oneline --graph --all

# Biror faylning tarixini ko'rish
git log --follow fayl_nomi.py

Nima qiladi: Commit tarixi va o'zgarishlarni ko'rsatadi.

Qachon ishlatiladi:

  • Kim, qachon, nima o'zgartirgani kerak bo'lganda
  • Bug qaysi commitda kiritilganini topish uchun

🏷️ 11. Tag (Versiya Belgilash)

# Tag yaratish
git tag v1.0.0

# Annotated tag
git tag -a v1.0.0 -m "Birinchi versiya"

# Tagni GitLab'ga yuborish
git push origin v1.0.0

# Barcha taglarni yuborish
git push origin --tags

Nima qiladi: Loyihaning ma'lum bir versiyasini belgilaydi.

Qachon ishlatiladi:

  • Yangi versiya chiqarilganda (release)
  • GitLab'da Release yaratishda
  • Versiyalarni kuzatish uchun

💾 12. Stash (Vaqtinchalik Saqlash)

# O'zgarishlarni vaqtinchalik saqlash
git stash

# Stashni qaytarish
git stash pop

# Stashlar ro'yxatini ko'rish
git stash list

# Ma'lum stashni qo'llash
git stash apply stash@{0}

Nima qiladi: Commitlanmagan o'zgarishlarni vaqtinchalik "javonga" yashiradi.

Qachon ishlatiladi:

  • Boshqa branchga o'tish kerak, lekin commit qilish erta bo'lganda
  • Shoshilinch bug fix qilish kerak bo'lganda

🔍 13. Diff Ko'rish

# Stage qilinmagan o'zgarishlarni ko'rish
git diff

# Stage qilingan o'zgarishlarni ko'rish
git diff --staged

# Ikki branch orasidagi farqni ko'rish
git diff main..feature/yangi-funksiya

Nima qiladi: Qaysi qatorlar o'zgarganini ko'rsatadi.

Qachon ishlatiladi:

  • Commit qilishdan oldin o'zgarishlarni tekshirishda
  • Branchlar orasidagi farqni tushunishda

🌐 14. Remote Boshqaruvi

# Remote manzillarni ko'rish
git remote -v

# Yangi remote qo'shish
git remote add origin https://gitlab.com/username/project.git

# Remote manzilni o'zgartirish
git remote set-url origin https://gitlab.com/yangi/manzil.git

Nima qiladi: GitLab server manzillarini boshqaradi.

Qachon ishlatiladi:

  • Repozitoriya URL o'zgarganda
  • Bir nechta remote bilan ishlashda

🔑 15. SSH Kalit Sozlash (GitLab uchun)

# SSH kalit yaratish
ssh-keygen -t ed25519 -C "email@example.com"

# Kalitni ko'rish (GitLab'ga qo'shish uchun)
cat ~/.ssh/id_ed25519.pub

# Ulanishni tekshirish
ssh -T git@gitlab.com

Nima qiladi: Parolsiz GitLab'ga ulanish imkonini beradi.

Qachon ishlatiladi:

  • GitLab'ni birinchi sozlaganda
  • HTTPS o'rniga SSH orqali ishlashda

📌 GitLab CI/CD uchun Foydali Comandalar

# GitLab Runner holati
gitlab-runner status

# Pipeline triggerini ko'rish
git push -o ci.variable="KEY=VALUE"

# Skip CI (pipeline ishlamaydi)
git commit -m "docs: readme yangilandi [skip ci]"

🗂️ Eng Ko'p Ishlatiladigan Ish Jarayoni (Workflow)

# 1. Oxirgi o'zgarishlarni oling
git pull origin main

# 2. Yangi branch oching
git checkout -b feature/mening-vazifam

# 3. Kod yozing va saqlang
git add .
git commit -m "feat: yangi funksiya qo'shildi"

# 4. GitLab'ga yuboring
git push origin feature/mening-vazifam

# 5. GitLab'da Merge Request oching (UI orqali)

📖 Commit Xabarlari Qoidasi (Conventional Commits)

Prefix Maqsad
feat: Yangi funksiya
fix: Xatoni tuzatish
docs: Hujjat o'zgartirish
style: Formatlash, vergul va h.k.
refactor: Kod qayta yozish
test: Test qo'shish
chore: Boshqa vazifalar

Tayyorlagan: GitLab Qo'llanmasi | Barcha comandalar Git 2.x+ versiyasiga mos keladi.

About

gitlab commands

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors