EN: Read in English
Dunia 10: Git Mendalam
Cari dalam sejarah
Anda akan belajar: cara cari bila teks berubah, di mana ia sekarang, dan siapa sentuh setiap baris.
Teks BM belum disemak oleh penutur asli.
Masalahnya
Pelanggan tanya: “Bila harga RM10 mula muncul?” Lima commit (titik simpan), tiga orang. Baca setiap perubahan ambil masa lama. Apa cara lebih pantas?
Pilih satu jawapan.
Tengok
git log -S "TODO" cari commit yang tambah atau buang teks itu. Orang panggil ia pickaxe (log -S): Carian untuk commit yang tambah atau buang sesuatu teks. (beliung). Di sini, satu commit tambah TODO dan satu lagi buang.
Cuba
Giliran anda. Commit mana yang tambah “RM10”?
Petunjuk
Taipgit log -S "RM10" --oneline.Tengok
git grep cari dalam fail yang Git jejak, seperti keadaannya sekarang. -n tambah nombor baris.
Ketik padanan dalam fail gaya (stylesheet).
0 daripada 1 dijumpai
Tengok
git blame tunjuk siapa ubah setiap baris kali terakhir, dan dalam commit mana. Ia untuk cari konteks, bukan untuk salahkan orang!
Teka
blame: Tunjuk siapa ubah setiap baris fail kali terakhir, dan dalam commit mana. kata Aisyah yang terakhir ubah baris footer. Adakah Aisyah yang tambah footer itu?
Pilih satu jawapan.
Semak
Alat mana paling sesuai untuk setiap soalan?
Seret kad ke dalam kotak. Atau ketik kad, kemudian ketik kotak.
Tengok
git shortlog -sn kira commit setiap orang, yang paling banyak dulu. Berguna untuk nota terima kasih dalam keluaran anda.
Anda berjaya!
Kini anda boleh cari bila, di mana dan siapa dalam sejarah.
Nak tahu lebih (pilihan)
git log -G "regex" padankan mana-mana baris yang berubah, bukan sekadar teks yang ditambah atau dibuang. git log --author=Ben tunjuk commit seorang sahaja. git log --grep=footer cari dalam mesej. Tambah -p untuk tengok setiap perubahan. git blame -L 2,3 fail tengok baris 2 hingga 3 sahaja.
English
A customer asks: “When did the price RM10 appear?” Five commits, three people. Reading every change takes ages. What is faster?
git log -S "TODO" finds commits that added or removed that text. People call it the pickaxe. Here, one commit added TODO and one removed it.
Your turn. Which commit added “RM10”?
git log -S "RM10" --oneline.git grep searches the files Git tracks, as they are now. -n adds line numbers.
git blame shows who last changed each line, and in which commit. It is for finding context, not for blaming people!
Blame says Aisyah last changed the footer line. Did Aisyah add the footer?
Which tool answers each question best?
git shortlog -sn counts commits per person, the most first. Handy for a thank-you note in your release.
You can now find when, where and who in your project’s history.
Anda dah siapkan ini. Latihan lagi pun bagus!
Dokumentasi rasmi: git log (-S, -G, --author, --grep) · git grep · git blame · git shortlog
Anda dah belajar 25 minit. Rehat sekejap bantu otak anda.
Pecutan selesai! Fokus yang hebat. Regangkan badan seminit?