Lihat Histori Commit (git log)
Jelajahi 'mesin waktu' Git Anda! Pelajari cara menggunakan perintah `git log` untuk melihat daftar commit, detail perubahan, penulis, tanggal, dan memfilter histori.
Nengok ke "Masa Lalu" Proyek: Jurus git log
Buat Liat Histori Commit!
Udah jago kan nge-add
dan nge-commit
perubahan di proyekmu? Setiap commit
itu kayak kamu nyimpen "foto" atau "checkpoint" dari kondisi kodemu di waktu tertentu. Nah, gimana caranya kita liat lagi "album foto" atau daftar checkpoint yang udah kita kumpulin itu?
Di sinilah perintah git log
beraksi! git log
itu kayak buku harian proyekmu, dia nyatet semua commit yang udah pernah kamu buat, lengkap dengan informasinya.
Perintah Dasar: git log
Cara paling gampang buat liat histori commit adalah dengan ngetik:
git log
Jalanin perintah ini di terminal, pas kamu lagi ada di dalem folder repositori Git-mu.
Apa yang Ditampilin git log
Default?
Secara default, git log
bakal nampilin daftar commit dari yang paling baru (paling atas) ke yang paling lama. Tiap entri commit biasanya nunjukin:
- Commit Hash (SHA-1 Hash):
- Serangkaian karakter heksadesimal yang panjang dan unik (misal,
a1b2c3d4e5f6...
). Ini adalah ID unik buat tiap commit. Kamu bakal pake hash ini kalau mau ngacu ke commit tertentu (misal, pas mau balik ke versi lama).
- Serangkaian karakter heksadesimal yang panjang dan unik (misal,
- Author (Penulis):
- Nama dan alamat email orang yang ngebuat commit itu (ini diambil dari konfigurasi
user.name
danuser.email
yang udah kita set sebelumnya!).
- Nama dan alamat email orang yang ngebuat commit itu (ini diambil dari konfigurasi
- Date (Tanggal):
- Tanggal dan waktu kapan commit itu dibuat.
- Commit Message (Pesan Commit):
- Pesan yang kamu tulis pas nge-
commit -m "pesan ini"
. Ini penting banget buat ngertiin apa isi perubahan di commit itu.
- Pesan yang kamu tulis pas nge-
Contoh Output git log
Sederhana:
commit a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0 (HEAD -> main)
Author: Budi Sanjaya <budi.sanjaya.dev@email.com>
Date: Tue Jul 18 10:30:00 2024 +0700
Tambah fitur halaman utama
commit f1e2d3c4b5a6f7e8d9c0b1a2f3e4d5c6f7a8b9a1
Author: Budi Sanjaya <budi.sanjaya.dev@email.com>
Date: Mon Jul 17 15:00:00 2024 +0700
Inisialisasi proyek dengan file README
(HEAD -> main)
: Ini nunjukin kalauHEAD
(penunjuk ke commit saat ini/terbaru di branch yang lagi aktif) lagi nunjuk ke branchmain
.
Keluar dari Tampilan git log
:
Kalau daftar commit-nya panjang banget, git log
bakal nampilinnya pake pager (kayak perintah less
di Linux/macOS).
- Pake Panah Atas/Bawah atau
PageUp
/PageDown
buat scroll. - Tekan tombol
q
buat keluar dari tampilan pager dan balik lagi ke prompt terminal.
Opsi-Opsi git log
yang Bikin Tampilan Lebih Asyik
Output git log
default kadang terlalu panjang dan detail. Untungnya, ada banyak banget opsi yang bisa kamu pake buat ngubah tampilannya jadi lebih ringkes atau lebih informatif sesuai kebutuhan.
Berikut beberapa opsi yang sering dipake:
-
--oneline
:- Nampilin tiap commit cuma dalam satu baris: hash commit (versi singkat) dan subjek pesan commit. Super ringkes dan enak buat liat gambaran umum!
bash git log --oneline
Contoh Output:
bash a1b2c3d (HEAD -> main) Tambah fitur halaman utama f1e2d3c Inisialisasi proyek dengan file README
-
--graph
:- Nampilin histori commit dalam bentuk grafik ASCII art di sebelah kiri. Ini berguna banget buat ngeliat alur percabangan (branching) dan penggabungan (merging) kalau proyekmu udah pake branch.
bash git log --graph --oneline --decorate --all # Kombinasi maut buat liat struktur branch!
--decorate
: Nampilin nama branch dan tag di sebelah commit-nya.--all
: Nampilin histori dari semua branch, bukan cuma branch yang lagi aktif.
-
--stat
:- Nampilin statistik singkat soal file apa aja yang diubah di tiap commit dan berapa banyak baris yang ditambah/dihapus.
bash git log --stat
-
-p
atau--patch
:- Nampilin perubahan kode (diff/patch) yang sebenernya dilakuin di tiap commit. Kamu bisa liat persis baris mana yang ditambah, dihapus, atau diubah. Berguna banget buat ngereview kode lama.
bash git log -p # Atau buat satu commit spesifik (misal, 2 commit terakhir): # git log -p -2
-
Membatasi Jumlah Commit yang Ditampilkan:
-<jumlah>
: Nampilin cuma sejumlah commit terakhir.- Contoh:
git log -3
(nampilin 3 commit terakhir). - Contoh:
git log --oneline -5
(nampilin 5 commit terakhir dalam format satu baris).
- Contoh:
-
Filter Berdasarkan Waktu:
--since="<tanggal>"
atau--after="<tanggal>"
: Nampilin commit sejak tanggal tertentu.--until="<tanggal>"
atau--before="<tanggal>"
: Nampilin commit sebelum tanggal tertentu.- Format tanggal bisa macem-macem, misal
"2024-01-01"
atau"2 weeks ago"
.- Contoh:
git log --oneline --since="1 week ago"
- Contoh:
-
Filter Berdasarkan Author (Penulis):
--author="<nama_atau_email_author>"
: Nampilin commit dari author tertentu aja. Cocoknya pake pola pencocokan (misal, bagian nama atau email).- Contoh:
git log --author="Budi"
- Contoh:
-
Filter Berdasarkan Pesan Commit:
--grep="<pola_teks_di_pesan>"
: Nampilin commit yang pesan commit-nya mengandung pola teks tertentu.- Contoh:
git log --grep="bugfix"
- Contoh:
-
Filter Berdasarkan File:
git log -- <path/ke/file_atau_folder>
: Nampilin histori commit yang ngubah file atau folder tertentu aja. Tanda--
(dua strip) itu penting buat misahin opsigit log
sama path file.- Contoh:
git log -- index.html
(histori perubahan fileindex.html
). - Contoh:
git log -p -- css/style.css
(liat diff perubahan distyle.css
).
- Contoh:
Kombinasi Opsi:
Kamu bisa gabungin banyak opsi sekaligus buat dapet output git log
yang paling sesuai sama kebutuhanmu!
Contoh:
git log --author="Ani" --since="2024-06-01" --oneline --graph --decorate -- src/fitur_A/
# Liat commit dari Ani, sejak 1 Juni 2024, tampilan oneline graph,
# cuma buat perubahan di folder src/fitur_A/
Alat Bantu Visual (GUI) buat git log
Kalau output git log
di terminal kerasa kurang enak diliat, banyak juga alat bantu GUI (Graphical User Interface) buat Git yang bisa nampilin histori commit dengan lebih visual dan interaktif.
- VS Code Git Integration: View Source Control di VS Code biasanya punya panel "History" atau bisa pake ekstensi kayak "GitLens" yang ngasih visualisasi histori commit yang keren banget langsung di editor.
- Git GUI Clients: Aplikasi kayak Sourcetree, GitKraken, GitHub Desktop, dll. punya tampilan histori yang sangat bagus.
Tapi, tetep penting buat ngerti cara pake git log
di command line, karena itu dasar dan selalu bisa diandelin di mana aja kamu pake Git.
git log
ini adalah "kaca spion" dan "buku catatan"-mu di Git. Dengan sering-sering ngintip histori, kamu jadi bisa lebih paham sama perkembangan proyekmu, gampang nyari tau kapan suatu perubahan dibuat, atau bahkan belajar dari kesalahan (atau keberhasilan!) di masa lalu.
Jangan ragu buat nyoba-nyoba berbagai opsi git log
biar kamu nemu format tampilan yang paling kamu suka dan paling informatif buatmu!
Kuis Melihat Histori Commit (git log)
Pertanyaan 1 dari 5
Perintah Git apa yang digunakan untuk menampilkan daftar histori commit dari yang paling baru ke yang paling lama?