Kusoma Historia: log, diff, show na Urambazaji wa Nyuma
Historia ya mradi si tu rekodi ya mabadiliko, bali ni nyaraka za maamuzi. Tutajifunza kusoma historia kwa njia yenye tija: kuchuja commits, kuona ni nini hasa kilibadilika kati ya matoleo, na kuelewa heshi za SHA-1 bila hofu. Kando, tutashughulikia jinsi ya kutofautisha 'historia nzuri' na 'historia mbaya'—hii huathiri moja kwa moja jinsi unavyochukuliwa katika timu.
- Utaweza kusoma historia ya hazina (repository) na kupata commit unayotaka kwa haraka kwa mwandishi, tarehe, au neno muhimu.
- Utaelewa jinsi ya kulinganisha matoleo ya faili katika viwango tofauti: saraka ya kazi, indeksi, na commit.
- Utajifunza kuandika ujumbe wa commits kulingana na viwango vinavyotambulika vya tasnia (Conventional Commits).
Phần đầu bài giảng
Historia ya Commits Kama Diary ya Mradi
- Git log inaonyesha historia kama diary iliyopinduliwa
- Kila ingizo ni picha ya mabadiliko
- Huhifadhi nani, lini, na nini kilibadilishwa
- Inaruhusu kuona mageuzi ya msimbo
Fikiria kwamba kila wakati unahifadhi mabadiliko kwenye Git, unafanya ingizo katika diary ya maendeleo. Amri ya 'git log' inaonyesha ingizo hizi kwa mpangilio wa nyuma wa nyakati—kutoka kwenye mpya zaidi hadi kwenye za zamani. Kwenye diary hii, historia kamili ya mradi huhifadhiwa: nani, lini, na marekebisho gani alifanya. Hii sio orodha tu ya mabadiliko, bali historia hai ya mageuzi ya msimbo wako. Ujuzi wa kusoma na kuchambua historia hii ni stadi muhimu kwa kazi katika timu. Kwa kuwa ni kupitia historia ya commits ndiyo unaona jinsi mradi ulivyokua, maamuzi yalivyofanywa, na kwa nini. Hebu tuangalie kwa undani muundo wa commit moja.
Kusoma Ingizo la Commit: Hash, Mwandishi, Tarehe
- commit: kitambulishi cha kipekee cha hash
- Author: nani na lini alifanya mabadiliko
- Date: muhuri wa wakati wa commit
- Ujumbe: nini kilibadilishwa hasa
Angalia matokeo ya amri ya 'git log'. Kila ingizo linaanza na mstari mrefu wa herufi — hii ni hash ya commit, kitambulishi chake cha kipekee. Kwa upande wake, unaona mwandishi wa mabadiliko na tarehe ya kufanya marekebisho. Chini yake, kuna ujumbe wa commit ambao msanidiprogramu aliandika wakati wa kuhifadhi mabadiliko. Zingatia muundo: kwanza kuna barua pepe ya mwandishi kwenye mabano ya pembe, kisha muhuri wa wakati. Takwimu hizi husaidia kuelewa muktadha wa mabadiliko na, ikihitajika, kuwasiliana na mwandishi kwa ufafanuzi. Sasa kwa kuwa tumechambua muundo wa commit, hebu tuelewe hash ni nini na inahitajika kwa nini.
#!/bin/bash
cd ~/projects/git-course/
git log -1 --pretty=format:'commit %H%nAuthor: %an <%ae>%nDate: %ad%n%n %s'
Hash ya Commit — Funguo Yako kwa Historia
- Hash ni alama ya dijiti ya commit
- Inategemea maudhui na metadata
- Kubadilisha hata herufi moja kunabadilisha hash
- Inaruhusu kurejelea kwa usahihi toleo lolote
Hash ya commit sio seti ya kawaida ya herufi, bali ni matokeo ya kazi ya kriptografia inayobadilisha maudhui ya commit kuwa msimbo wa kipekee. Ikiwa utabadilisha hata baiti moja kwenye commit, hash itabadilika kabisa. Hii inahakikisha uadilifu wa historia ya mabadiliko. Kwa kujua hash, unaweza kurejelea toleo lolote la msimbo, kama alama kwenye kitabu. Kwa mfano, amri ya 'git checkout' yenye hash itakupeleka kwenye hali ya mradi wakati wa commit hiyo. Hii ni muhimu hasa wakati unahitaji kurudisha mabadiliko au kuchambua wakati ambapo kosa lilionekana. Sasa kwa kuwa tunaelewa muundo wa historia, hebu tujifunze jinsi ya kuichuja — kwa sababu katika miradi halisi, commits zinaweza kuwa maelfu.
Bài giảng đầy đủ dành cho thuê bao
Còn 26 slide nữa trong phiên bản đầy đủ.
Video, toàn bộ slide, ghi chú, bài kiểm tra, gia sư AI và phỏng vấn sẽ mở sau khi đăng nhập và đăng ký thuê bao.
Đăng nhập hoặc đăng ký Đăng ký thuê baoNội dung bài giảng
- Historia ya Commits Kama Diary ya Mradi
- Kusoma Ingizo la Commit: Hash, Mwandishi, Tarehe
- Hash ya Commit — Funguo Yako kwa Historia
- Jinsi ya Kupata Commits za Mwandishi
- Kuchuja kwa Tarehe ya Commit
- Kutafuta kwa Maandishi ya Commits
- Kuchanganya Vichujio
- Tatizo la Kusoma Historia ya Commit
- Muundo Mfupi kwa --oneline
- Taswira ya Matawi kwa --graph
- Picha Kamili kwa --all
- Nini ni git diff na kwa nini inahitajika
- Kulinganisha Mabadiliko kwenye Saraka ya Kazi
- Nini Kimeandaliwa kwa Commit: git diff --staged
- Kulinganisha Commit Yoyote Mbili
- Jinsi ya Kuchunguza Kikamilifu Commit Mahususi
- Mazoezi: Kuangalia Mabadiliko katika Commit
- Kuangalia Faili Maalum kwenye Commit
- Kutafuta Mabadiliko ya Hivi Karibuni kwenye Faili
- Kuchambua Msimbo wa Mtu Mwingine Kupitia Historia
- Kutafuta Kuanzishwa au Kufutwa kwa Kazi
- Kwa Nini Ujumbe wa Commit Ni Muhimu
- Muundo wa Ujumbe Bora wa Commit
- Conventional Commits katika Vitendo
- Kurekebisha Commit Mbaya
- Kwa Nini Commit za 'fix' Ni Sia Antifomu
- Atomaikati ya Mabadiliko: Commit Moja — Kazi Moja
- git add -p: Chombo cha Kuokoa kwa Commit Safi
- Muhtasari na Kazi
Bài viết liên quan đến bài học này
- Lệnh Git: bảng tra cứu với ví dụ dùng hằng ngày
- git log, diff, show và blame: cách đọc lịch sử dự án trong Git
- git bisect: cách tìm commit làm hỏng code
- Git và GitHub: khác nhau thế nào và liên hệ ra sao
- Cách cài đặt Git trên Windows, macOS và Linux
Tất cả bài giảng của khóa học
- Utangulizi: Git kutoka mwanzoni hadi kwa msanidi programu anayejiamini
- Kwa nini Git inahitajika — na kwa nini bila yake huwezi kupata kazi
- Kusakinisha na Kusanidi: Kutayarisha Git kwa Matumizi ya Kwanza
- Hazina ya Kwanza: init, add, commit na uchawi wa faharasa
- Kusoma Historia: log, diff, show na Urambazaji wa Nyuma
- Matawi: Uhalisia Sambamba wa Msimbo Wako
- Kufuta Makosa kwa Usahihi: restore, reset, revert — sahihi na hatari
- GitHub na Hifadhi za Mbali: Msimbo Wako Hewani
- Kazi ya Timu: Forks, Matawi ya Sifa na Maombi ya Kuvuta
- Migogoro ya Kuunganisha Mabadiliko: Usiogope — Tuchambue na Tutatue
- Michakato ya Git katika Timu za Kweli: Njia gani ya kuchagua
- Zana za Kina: Rebase, Stash, Cherry-Pick na Lebo
- Mradi wa Mwisho: Kuiga Maendeleo ya Timu Halisi