====== Git — Setup & Konfigurasi ======
Halaman ini berisi konfigurasi dasar Git yang umum digunakan pada workstation atau server baru.
===== 1. Konfigurasi Global =====
Untuk melakukan setup sekaligus, edit konfigurasi global:
git config --global --edit
Contoh isi:
[user]
name = Nama Anda
email = email@example.com
[init]
defaultBranch = main
[core]
editor = code --wait
autocrlf = input
[alias]
st = status
co = checkout
br = branch
cm = commit
last = log -1 HEAD
File konfigurasi global biasanya berada di:
~/.gitconfig
Dapat diedit langsung menggunakan:
nano ~/.gitconfig
===== 2. Konfigurasi Identitas =====
Identitas digunakan sebagai nama dan email pada setiap commit.
git config --global user.name "Nama Anda"
git config --global user.email "email@example.com"
Verifikasi:
git config --global user.name
git config --global user.email
===== 3. Default Branch =====
Gunakan `main` sebagai default branch ketika membuat repository baru:
git config --global init.defaultBranch main
===== 4. Credential =====
Periksa credential helper:
git config --global credential.helper
Credential dapat disimpan secara lokal dengan:
git config --global credential.helper store
> Hindari `credential.helper store` pada komputer bersama karena credential dapat tersimpan dalam bentuk plaintext.
===== 5. SSH untuk Git =====
Generate SSH key:
ssh-keygen -t ed25519 -C "email@example.com"
Jalankan SSH agent:
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519
Tampilkan public key:
cat ~/.ssh/id_ed25519.pub
Tambahkan public key tersebut ke layanan Git yang digunakan.
Tes koneksi:
ssh -T git@github.com
===== 6. Alias Git =====
Alias berguna untuk command yang sering digunakan:
git config --global alias.st status
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.cm commit
git config --global alias.last "log -1 HEAD"
Contoh penggunaan:
git st
git br
git cm -m "Update configuration"
git last
===== 7. Default Editor =====
Jika menggunakan Visual Studio Code:
git config --global core.editor "code --wait"
===== 8. Line Ending =====
Untuk Linux:
git config --global core.autocrlf input
Untuk Windows:
git config --global core.autocrlf true
===== 9. Konfigurasi Repository =====
Konfigurasi tanpa `--global` hanya berlaku pada repository tersebut.
git config user.name "Nama Berbeda"
git config user.email "email@example.com"
Edit konfigurasi repository secara langsung:
git config --local --edit
File konfigurasi repository berada di:
.git/config
===== 10. Level Konfigurasi Git =====
Git memiliki tiga level konfigurasi:
^ Level ^ File ^ Keterangan ^
| System | `/etc/gitconfig` | Berlaku untuk seluruh user |
| Global | `~/.gitconfig` | Berlaku untuk user |
| Local | `.git/config` | Hanya berlaku pada repository |
Urutan konfigurasi yang lebih spesifik dapat menimpa konfigurasi yang lebih umum.
===== 11. Melihat Konfigurasi =====
Melihat konfigurasi global:
git config --global --list
Melihat konfigurasi repository:
git config --local --list
Melihat seluruh konfigurasi:
git config --list
Menampilkan sumber setiap konfigurasi:
git config --list --show-origin
Perintah `--show-origin` sangat berguna ketika terdapat konfigurasi yang tidak sesuai karena dapat menunjukkan file asal konfigurasi tersebut.
===== 12. Quick Setup =====
Untuk workstation atau server baru, konfigurasi minimum dapat dilakukan dengan:
git config --global user.name "Nama Anda"
git config --global user.email "email@example.com"
git config --global init.defaultBranch main
git config --global core.editor "code --wait"
Atau langsung edit seluruh konfigurasi:
git config --global --edit
===== 13. Troubleshooting Identity =====
Jika Git menampilkan:
Please tell me who you are.
atau:
Your name and email address were configured automatically.
Periksa konfigurasi:
git config --global user.name
git config --global user.email
Jika belum ada, tambahkan konfigurasi:
git config --global user.name "Nama Anda"
git config --global user.email "email@example.com"
Jika commit terakhir sudah dibuat dengan identitas yang salah:
git commit --amend --reset-author
===== Referensi Cepat =====
^ Kebutuhan ^ Command ^
| Edit konfigurasi global | `git config --global --edit` |
| Edit konfigurasi repository | `git config --local --edit` |
| Lihat konfigurasi | `git config --list` |
| Lihat sumber konfigurasi | `git config --list --show-origin` |
| Lihat username | `git config user.name` |
| Lihat email | `git config user.email` |
| Buat repository | `git init` |
| Clone repository | `git clone ` |
| Cek status | `git status` |
| Lihat branch | `git branch` |
| Lihat remote | `git remote -v` |