Development Workflowingizni Tezlashtiring: Git Worktrees, Fuzzy Finding va AI Coding Agentlar
Ko'p Repozitoriy Qo'polmasi Muammosi
2024-yilda ko'pchilik dasturchilar kabi sizning kompyuteringiz git klonlar qabristoni bo'lib qolgan. Ish loyihalari, shaxsiy g'oyalar, tajriba fork'lari, mijoz repozitoriy'lari – hammasi filesystem bo'ylab tarqab ketgan, ko'pi unutib tashlangan. "Qaysi repo edi?" deb ~ papkasida find buyruqini necha marta 2 tunda yozgansiz?
AI kod yozuvchi agentlarni qo'shsangiz, muammo ikki baravar oshadi. Claude Code, GitHub Copilot yoki o'zingizning AI yordamchilaringiz kod yozishni tezlashtiradi, lekin yangi muammo chiqadi: izolyatsiya. Bir vaqtda bir agent infratuzilmani o'zgartirsa, ikkinchisi API endpointlar yozsa, ularga alohida ish joyi kerak. Bitta papka endi yordam bermaydi, aksincha to'siq bo'ladi.
Branch o'zgartirishning o'zi jiddiy muammo. O'zgarishlarni stash qilish, branch almashtirish, konfliktlarni hal qilish, yo'qolgan kodni qaytarish – bular endi shunchaki noqulaylik emas. Ular inson va AI agentlar uchun tezlikni pasaytiruvchi to'siqlar.
Uch Vosita Yechimi: ghq + gwq + fzf
Yaxshi xabar: open-source jamoa bu muammoni allaqachon hal qilgan. Uchta vositani birlashtirsangiz, tartibli, kengaytiriladigan va AI ishlariga mos development muhitini yaratishingiz mumkin.
git worktree: Parallel Ish Tizimi
Avval asosiy texnologiyani bilib oling: git worktree. Bu Git xususiyati bitta repo uchun bir nechta ish papkalarini bir vaqtda saqlashga imkon beradi. Branch almashtirish va stash o'rniga alohida worktree'lar yaratasiz – har biri o'z branch'ida.
AI agentlar uchun nima uchun muhim? Izolyatsiya.
- Feature A ustida ishlaydigan agent A worktree'sida
- Bug B ni tuzatayotgan agent B worktree'sida
- Ular bir-biriga aralashmaydi
- Parallel ravishda mustaqil ishlaydi
Bu zamonaviy AI developmentga to'g'ri keladi. Bir worktree'da Claude kod tahlil qilsa, ikkinchisida test o'tkazing, asosiy branch toza qolsin – hammasi bir vaqtda.
1-Vosita: ghq – Repolar Tartibini O'rnatish
ghq (GitHub Query) oddiy ko'rinadi, lekin repo tartibsizligini hal qiladi. Repolarni remote URL bo'yicha bashoratli papka tuzilishida klonlaydi.
Tasavvur qiling, endi repolar tasodifiy tarqalmaydi:
~/ghq/
github.com/
owner/
repo-name/
gitlab.com/
team/
project/
~/ghq ni o'zingiz belgilaysiz. Keyin barcha repolar shu joyda, izlanadigan tartibda. Falsafa oddiy: standartlashtir, avtomatlashtir.
2-Vosita: gwq – Worktree'larni Aqlli Boshqarish
gwq (git Worktree Query) ghq g'oyasini worktree'ga kengaytiradi. Worktree'lar tasodifiy joyda emas, asl repolar yonida, bir hil ildizda joylashadi.
Sozlash oson. ~/.config/gwq/config.toml da:
[naming]
template = '{{.Host}}/{{.Owner}}/{{.Repository}}={{.Branch}}'
[worktree]
basedir = '~/ghq'
Bu shablon worktree'larni asl repolardan ajratib ko'rsatadi. Misol:
~/ghq/
github.com/acme-corp/api # asl repo
github.com/acme-corp/api=feature-payments # payments feature worktree
github.com/acme-corp/api=bugfix-auth # auth bug worktree
github.com/acme-corp/frontend # boshqa repo
github.com/acme-corp/frontend=redesign-ui # UI redesign worktree
=branch qo'shimchasi qaysi vazifa ekanini darhol ko'rsatadi. Ko'p parallel ishlar – inson yoki AI – uchun zarur.
3-Vosita: fzf – Papka Ro'yxatini Interaktiv Qidiruvga Aylantrish
fzf (fuzzy finder) hamma narsani birlashtiradi. Terminalda tez UI, stdin'ni qidiriladigan tanlovga aylantiradi.
Sehr shu yerda: ghq list | fzf
Endi papka yo'llarini yozmaysiz. "api" deb yozing – ro'yxat real vaqtda filtrlanadi. Enter bosing – shu repoga cd bo'lasiz.
Tartibli tuzilma bilan bu super kuch. Yo'llar, branch nomlari eslab qolish shart emas – qisman kalit so'zlar eslang, fzf qolganini hal qiladi.
Navigatsiya Shortcutlarini Yaratish
Uch vosita birgalikda shell funksiyalari orqali navigatsiyani osonlashtiradi.
Oddiy "repoga o'tish" funksiyasi:
# Har qanday repo yoki worktree'ga o'tish
j() {
cd "$(ghq list --full-path | fzf)"
}
Joriy repo'dagi worktree'lar orasida o'tish:
# Joriy repodagi worktree'ga o'tish
jw() {
cd "$(git worktree list | awk '{print $1}' | fzf)"
}
Bu qisqa kodlar eski muammolarni yo'q qiladi.
AI Yordamida Development Uchun Nima Uchun Muhim
Asl qiymat ko'p AI agentlar va o'z ishingizni boshqarishda chiqadi. Masalan, NameOcean Vibe Hosting AI bilan feature'larni tez joylashtiradi. Standart filesystem nafaqat qulay – zarur.
Agentlar shunday foyda ko'radi:
- Kerakli kodga tez yetib boradi
- Fayllarni ishonchli havola qiladi
- Parallel vazifalarda ajratish saqlaydi
- Yo'llar o'zgarmasa, avtomatlashtirish buzilmaydi
Boshlash
Sozlash 15 daqiqa:
- Vositalarni o'rnating:
ghq,gwq,fzf– paket menejerlar orqali - ghq sozlang: Git config'da
ghq.root = ~/ghq - gwq sozlang:
~/.config/gwq/config.tomlyarating - Shell funksiyalarini qo'shing: Yuqoridagilarni
.bashrcyoki.zshrcga - Klonlashni boshlang:
git cloneo'rnigaghq getishlating
Bir necha soatdan keyin bu setupsiz qanday ishlaganingizga hayron bo'lasiz. Bir haftadan bu zamonaviy development asosi bo'lib qoladi.
Kengroq Ko'rinish
Bu vositalar developer samaradorligidagi o'zgarishni ko'rsatadi. Filesystem bilan urushmaymiz – u bilan hamohang bo'lamiz. Parallel ishni qabul qilamiz – inson va AI uchun.
Eski noqulayliklar 10-15% vaqtni yeydi. Har bir context switchdan qochish – g'alaba. Har bir konflikt – saqlangan impuls. Har bir mustaqil worktree'dagi AI agent – jamoa natijasini ko'paytiradi.
Developer tajribasini jiddiy olsangiz – o'zingiz yoki jamoangiz uchun – bu stackni o'rganing.