Sepanjang Course ini kita mengetik seluruh perintah di satu tempat: terminal. Terminal adalah perkakas utama bekerja dengan Git, jadi kenyamanannya berdampak setiap hari — prompt yang tidak menampilkan branch membuat kita bolak-balik mengetik git branch, dan keluaran tanpa warna membuat git status dan git diff lebih sulit dipindai. Chapter lampiran ini menyiapkan terminal secara praktis: memilih terminal yang tepat untuk tiap sistem operasi, lalu melakukan dua penyesuaian nyata yang bisa diuji langsung — prompt bash yang menampilkan branch aktif dan warna otomatis pada perintah Git.

Peta Terminal per Sistem Operasi #

Git adalah program baris perintah, jadi terminal apa pun bisa menjalankannya. Perbedaan antar sistem operasi terletak pada apa yang sudah terpasang bawaannya:

Sistem operasiTerminalKeterangan
Linux (desktop GNOME)GNOME Terminalbawaan, langsung terpasang
Linux (desktop KDE)Konsolebawaan, langsung terpasang
WindowsPowerShellbawaan, mampu menjalankan git setelah Git for Windows terpasang
WindowsWindows Terminalterminal modern, opsional — dipasang dari Microsoft Store atau winget
WindowsGit Bashrekomendasi utama Course — ikut terpasang bersama Git for Windows
macOSTerminal.appbawaan di folder Utilities
macOSiTerm2alternatif populer pihak ketiga, opsional

Rekomendasi Git Bash untuk Windows punya alasan praktis: Git Bash membundel bash beserta perintah Unix, sehingga seluruh contoh perintah pada Course ini — mulai ~ sebagai rumah, printf untuk membuat berkas, sampai redirect 2>/dev/null — berjalan tanpa penyesuaian. Satu penyesuaian yang layak dilakukan di terminal mana pun adalah memilih font monospace dengan ukuran yang nyaman; pengaturannya berada di Preferences atau Settings tiap terminal (misalnya GNOME Terminal menyimpannya di bagian Profile, iTerm2 di bagian Profiles) — detail menunya berbeda-beda antar terminal, jadi kita cukup mencari kata “font” di pengaturan profil.

Prompt yang Menampilkan Branch Aktif #

Prompt bash dikendalikan oleh variabel PS1, dan nilai bawaannya tidak menampilkan branch. Solusinya adalah menambahkan fungsi kecil ke ~/.bashrc lalu menyisipkan panggilannya ke PS1. Inilah isi bashrc-latihan yang kita uji di sandbox:

bash
git_branch() {
  local cabang
  cabang=$(git branch --show-current 2>/dev/null)
  if [ -n "$cabang" ]; then
    printf '(%s)' "$cabang"
  fi
}
PS1='\u@\h:\w \[\e[33m\]$(git_branch)\[\e[0m\]\$ '

Bedah barisnya singkat saja: fungsi git_branch menjalankan git branch --show-current untuk membaca nama branch, dengan 2>/dev/null menelan pesan galat saat kita berada di luar repository sehingga prompt tetap bersih; if [ -n "$cabang" ] hanya mencetak bila hasilnya tidak kosong; baris PS1 memuat escape \u (nama pengguna), \h (nama mesin), \w (direktori), lalu $(git_branch) yang dievaluasi ulang setiap kali prompt tampil — jadi branch di prompt selalu segar tanpa perlu restart. Sepasang \[ dan \] memberi tahu readline bahwa teks di antaranya tidak memakan kolom tampilan, sedangkan \e[33m dan \e[0m mewarnai branch dengan kuning lalu mengembalikan warna normal. Mari kita lihat hasil nyatanya di sandbox:

bash
cd repositori
source ../bashrc-latihan
git_branch

Output yang Dihasilkan:

text
(fitur-desain)

Pindah branch, panggil fungsinya lagi:

bash
git switch main
git_branch

Output yang Dihasilkan:

text
(main)

Sementara di luar repository (direktori yang bukan bagian repo Git mana pun), git_branch tidak menghasilkan keluaran sama sekali — prompt tampil polos tanpa kurung. Pada mesin kita, cukup salin kedua blok itu ke ~/.bashrc lalu buka terminal baru atau jalankan source ~/.bashrc.

Warna Otomatis untuk Perintah Git #

Penyesuaian kedua satu baris saja: mengaktifkan warna untuk seluruh perintah Git.

bash
git config --global color.ui auto

Mesin latihan Course menjalankan perintah itu dengan HOME yang diarahkan ke sandbox agar berkas .gitconfig sungguhan tidak tersentuh — di mesin kita cukup jalankan polos seperti di atas. Hasilnya tersimpan rapi:

bash
git config --global --get color.ui

Output yang Dihasilkan:

text
auto

Dan isi ~/.gitconfig kini memuat blok berikut:

text
[color]
	ui = auto

Nilai auto berarti Git mewarnai keluaran hanya saat tujuannya terminal interaktif — begitu keluaran dialirkan ke | atau berkas, warna otomatis mati, sehingga skrip dan log tetap bersih. Bahwa kode warna benar-benar ada bisa kita buktikan dengan memaksa warna lalu menampilkannya lewat cat -v:

bash
git -c color.ui=always status --short | cat -v

Output yang Dihasilkan:

text
^[[31m??^[[m draf.txt

Notasi ^[ adalah cara cat -v menampilkan byte ESC, jadi keluaran mentahnya berbunyi ESC[31m + ?? + ESC[m + draf.txt: kode warna merah membungkus penanda berkas belum dilacak draf.txt, lalu ESC[m mengembalikan warna normal (penanda \e[33m pada PS1 di atas bekerja dengan prinsip yang sama). Warna itu sendiri hanya terlihat di terminal sungguhan, bukan pada teks tertangkap.

Terminal yang nyaman kini lengkap: branch terlihat di prompt dan keluaran Git berwarna. Perkakas berikutnya yang layak disiapkan adalah editor — dan VS Code membawa lebih dari sekadar editor: panel Source Control bawaannya. Lanjut ke Menyiapkan VS Code .