Sebelas chapter contekan sebelumnya memakai istilah yang dipakai seluruh Course — dari annotated tag sampai working tree — dan bab ini menjadikan semuanya satu kamus. Empat puluh enam istilah disusun alfabetis dalam empat tabel, tiap baris memuat arti dalam satu-dua kalimat, dan nama istilahnya tertaut ke chapter tempat konsep itu pertama diperkenalkan dan dibedah. Cara pakainya dua arah: saat membaca materi dan menemukan kata asing, lompat ke sini untuk arti kilat; saat hendak menulis dokumentasi atau diskusi tim, periksa dulu definisi resminya di sini agar istilah dipakai konsisten. Istilah teknis umum tetap dalam bahasa Inggris sesuai konvensi Course — commit tidak menjadi “komitmen”.
A sampai D #
Grup pembuka memuat fondasi: cara Git menyimpan data (blob, commit), cara kita membatalkan (cherry-pick), dan dua istilah yang paling sering membuat jantung pemula berdebar — detached HEAD dan dirty, yang keduanya jauh lebih jinak daripada bunyinya.
| Istilah | Arti |
|---|---|
| annotated tag | Tag yang tersimpan sebagai objek penuh — pesan, pembuat, tanggal — dan bisa diverifikasi; pilihan untuk rilis yang dibagikan. |
| bare repository | Repository tanpa working tree yang hanya berisi database riwayat; bentuk standar repository pusat bersama. |
| blob | Objek penyimpan isi satu berkas, tanpa nama berkas — nama justru tercatat di tree. |
| branch | Penunjuk bergerak ke commit terbaru satu garis pengembangan; membuat dan berpindah branch nyaris tanpa biaya. |
| cherry-pick | Menerapkan patch satu commit ke posisi saat ini; hash berubah karena parent-nya baru. |
| commit | Snapshot lengkap isi proyek plus metadata — penulis, waktu, pesan, parent — yang di-hash menjadi identitasnya. |
| commit-msg | Client-side hook yang menerima berkas pesan sebelum commit lahir; gerbang validasi format pesan. |
| detached HEAD | Kondisi HEAD menempel pada commit, bukan branch; commit yang lahir di kondisi ini tidak punya penunjuk tetap. |
| diff | Perbandingan isi antar dua titik — working tree, staging, atau commit — baris demi baris. |
| dirty | Sebutan working tree yang memuat perubahan belum di-commit; lawannya clean. |
E sampai L #
Grup tengah menampung mesin sinkronisasi (fetch, fork, fast-forward) berdampingan dengan penunjuk identitas (hash, HEAD, index) — tiga kata terakhir paling sering tertukar pemula karena semuanya “menunjuk sesuatu”. Pasangan main/master dan dua istilah merge menutupnya.
| Istilah | Arti |
|---|---|
| fast-forward | Penggabungan yang hanya menggeser penunjuk branch maju tanpa commit merge — mungkin bila riwayat penerima belum bercabang. |
| fetch | Menarik objek dan memperbarui remote-tracking branch tanpa menyentuh branch lokal. |
| fork | Salinan repository pada akun sendiri di platform hosting; kontribusi open source mengalir lewat fork, pull request, dan upstream. |
| hash | Deretan 40 karakter heksadesimal yang menjadi identitas sekaligus alamat penyimpanan objek. |
| HEAD | Penunjuk posisi kita sedang berada — lazimnya nama branch aktif; jejak pergerakannya dijaga reflog. |
| index | Berkas .git/index yang mencatat kurasi perubahan siap-commit; sinonim teknis dari staging area. |
| lightweight tag | Penunjuk polos berisi hash commit tanpa metadata; penanda pribadi sementara. |
| main | Nama branch utama yang menjadi kesepakatan industri saat ini; dipasang sebagai default lewat init.defaultBranch. |
| master | Nama branch awal bawaan Git sejak versi awal; masih dijumpai pada repository lama. |
| merge | Menyatukan dua garis riwayat — lewat commit penggabung, atau fast-forward bila lurus. |
| merge conflict | Kondisi merge atau rebase yang berhenti karena kedua sisi mengubah baris yang sama; keputusan diserahkan kepada kita. |
O sampai R #
Grup ini kebetulan menjadi yang terpadat: nama-nama di balik internals (object, packfile, ref) hidup satu meja dengan perintah harian (pull, push, rebase) dan dua keluarga pembatalan commit (revert — menambah; reset dan kawan-kawannya di tabel contekan undo).
| Istilah | Arti |
|---|---|
| object | Unit penyimpanan Git — blob, tree, commit, tag — yang dialamatkan lewat hash isinya sendiri. |
| origin | Nama konvensi untuk remote pertama; bukan kata kunci sehingga boleh diganti. |
| packfile | Berkas pemadat banyak objek yang menyimpan bentuk deltanya; hasil kerja git gc. |
| patch | Perubahan yang dinyatakan sebagai diff — diterapkan cherry-pick dan rebase; format pertukaran antar repository. |
| pull | fetch plus penggabungan — merge atau rebase — dalam satu perintah. |
| push | Mengirim commit dan memajukan penunjuk branch di sisi remote. |
| rebase | Memindahkan rangkaian commit ke basis baru dengan menerapkan patch satu per satu; menghasilkan riwayat linear. |
| ref | Penunjuk bernama ke commit; branch dan tag adalah ref. |
| reflog | Catatan semua posisi yang pernah diduduki HEAD; jaring pengaman saat mencari commit yang “hilang”. |
| remote | Salinan repository di lokasi lain yang terhubung lewat nama pendek. |
| repository | Database riwayat Git yang hidup di folder .git — objek, refs, dan konfigurasi. |
| revert | Membatalkan commit dengan membuat commit pembalik baru; riwayat tetap jujur mencatat pembatalan. |
S sampai Z #
Grup penutup memuat tiga area perputaran kerja harian (staging area, stash, working directory), dua struktur penyimpanan (snapshot, tree), dan version control — istilah yang memulai seluruh perjalanan Course ini.
| Istilah | Arti |
|---|---|
| SHA-1 | Algoritma checksum bawaan Git yang menghasilkan hash 40 karakter; mode SHA-256 tersedia untuk repository baru. |
| snapshot | Potret lengkap seluruh berkas terlacak pada satu titik waktu — model penyimpanan Git, bukan rangkaian diff. |
| squash | Melebur beberapa commit menjadi satu, lewat aksi interactive rebase atau merge --squash. |
| staging area | Ruang transit antara working tree dan commit berisi perubahan terpilih; tersimpan sebagai berkas index. |
| stash | Tumpukan simpanan sementara untuk pekerjaan setengah jadi — sebenarnya commit yang ditunjuk refs/stash. |
| submodules | Repository di dalam repository: satu folder yang menunjuk commit repository lain. |
| tag | Nama tetap yang dibekukan pada satu titik riwayat; dua jenisnya lightweight dan annotated. |
| tracking branch | Branch lokal yang terikat ke cabang remote tertentu sehingga git status melaporkan ahead/behind. |
| tree | Objek yang mencatat struktur satu direktori: nama berkas beserta hash blob yang dirujuknya. |
| untracked | Berkas di working tree yang belum pernah masuk index maupun riwayat. |
| upstream | Cabang remote yang menjadi mitra default sebuah branch lokal untuk git pull dan git push polos. |
| version control | Sistem yang mencatat setiap versi berkas sehingga perubahan bisa dilacak, dibandingkan, dan dipulihkan. |
| working directory | Folder proyek tempat kita menyunting berkas — disebut juga working tree, area pertama dari tiga area Git. |
Istilah Course kini lengkap dari pengantar sampai penutup — dan glosarium ini menutup pula seluruh section contekan. Perjalanan belajar masih menyisakan satu pemberhentian: persiapan lingkungan kerja yang lebih jauh — terminal, editor, kunci SSH, GPG, hingga akun platform — di section penutup: Lampiran .