Git commit
Git commit
Commit nima?
Commit (qayd) loyihangizdagi saqlash nuqtasiga o‘xshaydi.
U ma’lum bir vaqtdagi fayllaringiz holatining suratini nima o‘zgarganini tavsiflovchi xabar bilan birga qayd etadi.
Kerak bo‘lsa, istalgan vaqtda oldingi commit’ga qaytishingiz mumkin.
Commit’lar uchun ba’zi asosiy buyruqlar:
git commit -m "message"- Stage qilingan o‘zgarishlarni xabar bilan commit qilishgit commit -a -m "message"- Barcha kuzatiladigan o‘zgarishlarni commit qilish (staging’ni o‘tkazib yuborish)git log- Commit tarixini ko‘rish
Xabar bilan qanday commit qilish mumkin (-m)
Stage qilingan o‘zgarishlaringizni saqlash uchun git commit -m "your message" buyrug‘idan foydalaning:
Misol
git commit -m "First release of Hello World!"
[master (root-commit) 221ec6e] First release of Hello World!
3 files changed, 26 insertions(+)
create mode 100644 README.md
create mode 100644 bluestyle.css
create mode 100644 index.html
Siz va boshqalar nima o‘zgarganini tushunishi uchun har doim aniq xabar yozing.
Barcha o‘zgarishlarni stage qilmasdan commit qilish (-a)
git commit -a -m "message" yordamida allaqachon kuzatilayotgan fayllar uchun staging bosqichini o‘tkazib yuborishingiz mumkin.
Bu barcha o‘zgartirilgan va o‘chirilgan fayllarni commit qiladi, lekin yangi/kuzatilmaydigan fayllarni emas.
Misol
git commit -a -m "Quick update to README"
[master 123abcd] Quick update to README
1 file changed, 2 insertions(+)
Ogohlantirish: Staging bosqichini o‘tkazib yuborish keraksiz o‘zgarishlarni ham kiritib yuborishingizga olib kelishi mumkin. Ehtiyotkorlik bilan foydalaning.
Eslatma: git commit -a yangi/kuzatilmaydigan fayllar uchun ishlamaydi. Yangi fayllar uchun avval git add <file> buyrug‘idan foydalanishingiz shart.
Yangi faylni -a bilan commit qilishga urinsangiz nima bo‘ladi?
$ git commit -a -m "Try to commit new file"
On branch master
No commits yet
Untracked files:
(use "git add ..." to include in what will be committed)
index.html
nothing added to commit but untracked files present (use "git add" to track)
Ko‘p qatorli commit xabarlarini yozish
Agar shunchaki git commit deb yozsangiz (-m parametrisiz), batafsil, ko‘p qatorli xabar yozishingiz uchun standart muharriringiz ochiladi:
Misol
git commit
Birinchi qatorga qisqa xulosa yozing, bitta bo‘sh qator qoldiring, so‘ng pastda batafsil ma’lumot qo‘shing.
Commit xabarlari bo‘yicha eng yaxshi amaliyotlar:
- Birinchi qatorni qisqa tuting (50 ta belgi yoki undan kam).
- Buyruq maylidan foydalaning (masalan, “Added feature” emas, “Add feature”).
- Xulosadan keyin bitta bo‘sh qator qoldiring, so‘ng kerak bo‘lsa, batafsil ma’lumot qo‘shing.
- Faqat nima o‘zgarganini emas, balki o‘zgarish nima uchun kiritilganini ham tavsiflang.
Commit’ning boshqa foydali parametrlari
- Bo‘sh commit yaratish:
git commit --allow-empty -m "Start project" - Oldingi commit xabaridan foydalanish (muharrirsiz):
git commit --no-edit - Stage qilingan o‘zgarishlarni xabarni saqlagan holda oxirgi commit’ga tezda qo‘shish:
git commit --amend --no-edit
- Faylni stage qilishni unutdingizmi?
Agargit commit -m "message"buyrug‘ini ishga tushirib, faylnigit addqilishni unutgan bo‘lsangiz, uni qo‘shing va qayta commit qiling. Yoki uni oxirgi commit’ingizga qo‘shish uchungit commit --amendbuyrug‘idan foydalaning. - Commit xabarida imlo xatosi bormi?
Oxirgi commit xabarini tuzatish uchungit commit --amend -m "Corrected message"buyrug‘idan foydalaning. - Tasodifan noto‘g‘ri fayllarni commit qildingizmi?
Oxirgi commit’ni bekor qilib, o‘zgarishlaringizni stage holatida saqlab qolish uchungit reset --soft HEAD~1buyrug‘idan foydalanishingiz mumkin.
Commit tarixini ko‘rish (git log)
Repozitoriydagi commit’lar tarixini ko‘rish uchun git log buyrug‘idan foydalanishingiz mumkin:
Misol
git log
commit 09f4acd3f8836b7f6fc44ad9e012f82faf861803 (HEAD -> master)
Author: w3schools-test <test@w3schools.com>
Date: Fri Mar 26 09:35:54 2021 +0100
Updated index.html with a new line
commit 221ec6e10aeedbfd02b85264087cd9adc18e4b26
Author: w3schools-test <test@w3schools.com>
Date: Fri Mar 26 09:13:07 2021 +0100
First release of Hello World!
Qisqaroq ko‘rinish uchun git log --oneline buyrug‘idan foydalaning:
Misol
git log --oneline
09f4acd Updated index.html with a new line
221ec6e First release of Hello World!
Har bir commit’da qaysi fayllar o‘zgarganini ko‘rish uchun git log --stat buyrug‘idan foydalaning:
Misol
git log --stat
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!

GitHub
Bitbucket
GitLab