Perintah-perintah pada enam contekan sebelumnya menjalankan perilaku bawaan Git — dan perilaku bawaan itu sendiri bentukan pengaturan git config. Chapter ini merangkum kunci-kunci yang paling sering dipasang, dikelompokkan lima kebutuhan: identitas, kebiasaan kerja, tampilan, keamanan, dan performa. Cara pakainya satu pola: temukan kelompok di judul tabel, baca efek di kolom terakhir, lalu salin nilainya ke perintah git config --global <kunci> <nilai>. Nilai kolom tengah adalah contoh yang sudah dipakai dan diverifikasi di chapter teori — ganti sesuai selera, misalnya editor atau email. Mekanisme baca-tulis-hapus beserta tiga level penyimpanannya dibedah di git config
.
Identitas #
Dua kunci pertama yang layak dipasang di komputer baru; keduanya tercatat pada setiap commit yang kita buat (Konfigurasi Identitas
). Tanpa keduanya, commit ditolak dengan pesan Please tell me who you are. — penyakit yang juga tercatat di tabel Troubleshooting
.
| Kunci | Nilai contoh | Efek |
|---|---|---|
user.name | "Budi Santoso" | Nama penulis yang tercetak pada tiap commit. |
user.email | "[email protected]" | Email penulis — dipakai layanan hosting mengaitkan commit dengan akun. |
Kebiasaan Kerja #
Kelompok terbesar: kunci-kunci yang mengubah perilaku default perintah sehari-hari, dari kelahiran repository sampai cara git pull menggabungkan.
| Kunci | Nilai contoh | Efek |
|---|---|---|
init.defaultBranch | main | Nama branch awal untuk setiap git init — menghapus hint master dan langkah ganti nama (Konfigurasi Default Branch
). |
core.editor | "code --wait" | Editor yang dibuka git commit tanpa -m; Vim/VS Code memakai vim/code --wait (Konfigurasi Editor
). |
pull.rebase | false | Strategi git pull pada branch divergen: false menggabungkan lewat merge, true menyusun ulang lewat rebase; pull.ff only menolak selain maju cepat (git pull
). |
push.default | simple | Menentukan apa yang dikirim git push polos — nilai bawaan simple mengirim branch aktif ke upstream-nya (git push
). |
push.autoSetupRemote | true | git push polos pada branch tanpa upstream otomatis memasang ikatan --set-upstream — usulan yang muncul pada penolakan push (git push
). |
commit.gpgsign | true | Setiap commit ditandatangani tanpa perlu flag -S; urungkan sekali dengan --no-gpg-sign (Menandatangani Commit dan Tag
). |
alias.<nama> | "status -sb" | Pintasan perintah — alias.lg "log --oneline --graph" menjadi git lg (Konfigurasi Alias
). |
Tampilan #
Dua kunci kenyamanan keluaran terminal. Keduanya di luar chapter teori Course — perilakunya diuji nyata di sandbox dan daftar lengkap kunci sejenis terdokumentasi di dokumentasi git config .
| Kunci | Nilai contoh | Efek |
|---|---|---|
color.ui | auto | Mewarnai keluaran diff, status, dan log di terminal; always memaksa warna meski disalurkan ke pipa. |
help.autocorrect | 30 | Salah ketik seperti git puhs dijalankan sebagai usulan terdekat setelah jeda 3 detik; tanpa pengaturan, Git hanya mengusulkan. |
Keamanan #
Kredensial HTTPS dan hooks tidak ikut ter-clone — dua kunci ini menutup celahnya di tiap mesin.
| Kunci | Nilai contoh | Efek |
|---|---|---|
credential.helper | 'cache --timeout=3600' | Tempat menyimpan kredensial HTTPS: cache di memori sementara, store di ~/.git-credentials teks polos (Credential Helper
). |
core.hooksPath | hooks | Mengarahkan Git ke folder hook di dalam repository — hooks versioned ikut ter-clone dan ter-review (Mengelola Hooks ). |
Performa #
Untuk repository besar dan mesin yang dipakai seharian; seluruhnya dibedah di section Internals dan Performa.
| Kunci | Nilai contoh | Efek |
|---|---|---|
core.untrackedCache | true | git status tidak menghitung ulang isi direktori yang tak berubah (Repository Performance
). |
core.fsmonitor | true | Daemon berlangganan event sistem operasi sehingga git status tak perlu men-stat semua berkas. |
maintenance.repo | dikelola register | Daftar repository yang dirawat scheduler latar belakang melalui git maintenance (git maintenance
). |
gc.pruneExpire | 2.weeks.ago | Umur minimal objek tak terjangkau sebelum boleh dipangkas — jaminan bahwa commit “hilang” masih bisa diselamatkan (Garbage Collection ). |
Pengaturan di atas menyimpan selera dan perilaku mesin kita: lima kelompoknya dibaca sekali saat komputer baru, lalu barisnya jarang disentuh lagi. Nilai contoh pada kolom tengah sengaja dipilih dari nilai yang benar-benar dipakai chapter teori, sehingga menyalinnya utuh sudah aman — tinggal editor dan email yang menyesuaikan. Derau yang satu jenis lain — berkas hasil build, dependensi, log — bukan urusan konfigurasi melainkan urusan berkas .gitignore, dan kumpulan polanya siap salin di chapter berikutnya: Pola .gitignore
.