Git

Belum masuk. Progresmu tidak tersimpan.

Masuk
  • Bab 2 dari 8
  • 25 menit
  • 4 soal kuis

Instalasi dan Konfigurasi Awal Git

Di bab ini (10 bagian)
  1. Tujuan
  2. Instalasi Git
  3. Konfigurasi awal: identitas
  4. Branch default dan editor
  5. Mengecek konfigurasi
  6. Tiga level konfigurasi
  7. SSH key sebagai persiapan
  8. Coba sendiri
  9. Kesalahan umum
  10. Rangkuman

Tujuan bab ini

  • Memasang Git di Windows, macOS, atau Linux lalu memverifikasinya.
  • Mengatur identitas, nama branch default, dan editor dengan git config.
  • Memahami tiga level konfigurasi (system, global, local) dan urutan prioritasnya.
  • Menyiapkan SSH key sebagai bekal terhubung ke GitHub nanti.

Instalasi Git

Git gratis dan tersedia untuk semua sistem operasi utama. Pilih sesuai laptopmu.

Windows. Unduh Git for Windows dari git-scm.com, lalu jalankan installer. Pilihan default sudah aman untuk pemula. Paketnya menyertakan Git Bash, terminal ala Linux yang membuat perintah di kelas ini bisa kamu ketik persis sama. Kalau suka cara cepat, pakai winget:

winget install Git.Git

macOS. Ada dua jalan. Pertama, ketik git --version di Terminal. Kalau Git belum ada, macOS akan menawarkan pemasangan Xcode Command Line Tools yang sudah berisi Git. Kedua, lewat Homebrew untuk versi yang lebih baru:

brew install git

Linux. Pakai package manager bawaan distribusimu. Untuk Debian/Ubuntu:

sudo apt update
sudo apt install git

Fedora memakai sudo dnf install git.

Setelah selesai, buka terminal baru (di Windows: Git Bash) dan verifikasi:

git --version
git version 2.43.0

Angkanya boleh beda. Selama muncul nomor versi, Git siap dipakai.

Konfigurasi awal: identitas

Setiap commit menyimpan nama dan email pembuatnya. Jadi sebelum commit pertama, kenalkan dirimu ke Git:

git config --global user.name "Rani Putri"
git config --global user.email "rani@contoh.com"

Kalau langkah ini dilewati, saat commit Git akan menolak dengan pesan Author identity unknown dan *** Please tell me who you are.

Ingat, identitas ini permanen di dalam setiap commit dan ikut terkirim ke server saat push. Pakai nama dan email yang memang boleh dilihat publik. Kalau nanti memakai GitHub, sebaiknya email ini sama dengan email akun GitHub-mu supaya commit tersambung ke profilmu.

Branch default dan editor

Secara bawaan, Git 2.43 masih menamai branch pertama master dan menampilkan petunjuk hint: Using 'master' as the name for the initial branch. setiap kali git init. GitHub dan kebanyakan tim kini memakai main, jadi samakan sejak awal:

git config --global init.defaultBranch main

Git juga membuka editor saat kamu commit tanpa -m atau saat merge. Defaultnya sering Vim, yang membingungkan pemula. Kalau kamu pakai VS Code:

git config --global core.editor "code --wait"

Opsi --wait membuat Git menunggu sampai tab editor ditutup. Pilihan lain: "nano" yang ramah terminal.

Ada juga pengaturan akhir baris. Windows memakai CRLF, macOS/Linux memakai LF. Supaya tidak berantakan saat kolaborasi lintas OS:

git config --global core.autocrlf true    # di Windows
git config --global core.autocrlf input   # di macOS/Linux

Terakhir, alias untuk menyingkat perintah yang sering dipakai:

git config --global alias.st status

Sekarang git st sama dengan git status.

Mengecek konfigurasi

Lihat semua pengaturan yang aktif:

git config --list
user.name=Rani Putri
user.email=rani@contoh.com
init.defaultbranch=main
core.editor=code --wait

Perhatikan nama kunci ditampilkan dengan huruf kecil (init.defaultbranch). Itu normal, karena nama kunci di Git tidak peka huruf besar-kecil. Untuk satu nilai saja, sebut kuncinya:

git config user.name
Rani Putri

Mau tahu nilai itu datang dari file mana? Tambahkan --show-origin, misalnya git config --list --show-origin.

Tiga level konfigurasi

LevelOpsiBerlaku untukLokasi file
System--systemSemua pengguna di komputer/etc/gitconfig (Linux/macOS)
Global--globalSatu pengguna, semua repositori~/.gitconfig
Local--local (default di dalam repo)Satu repositori saja.git/config di folder proyek

Aturannya: yang lebih spesifik menimpa yang umum. Local menang atas global, global menang atas system. Contoh berguna: email global kamu email pribadi, tapi untuk repositori kantor kamu ingin email kerja.

cd proyek-kantor
git config --local user.email "kerja@kantor.com"
git config user.email
kerja@kantor.com

Di repositori lain, git config user.email tetap menampilkan rani@contoh.com.

SSH key sebagai persiapan

Nanti saat push ke GitHub, kamu perlu membuktikan bahwa kamu pemilik akun. Salah satu cara paling nyaman adalah SSH key: sepasang kunci, privat (rahasia, tetap di laptop) dan publik (boleh dibagikan, ditempel ke GitHub). Buat sekarang supaya siap:

ssh-keygen -t ed25519 -C "rani@contoh.com"

Tekan Enter untuk lokasi default, lalu isi passphrase (atau kosongkan). Output-nya diawali:

Generating public/private ed25519 key pair.

Dua file tercipta di ~/.ssh/: id_ed25519 (privat) dan id_ed25519.pub (publik). Tampilkan kunci publik dengan cat ~/.ssh/id_ed25519.pub. Isinya satu baris yang diawali ssh-ed25519 AAAA.... Cara menempelkannya ke GitHub dibahas di bab remote.

Coba sendiri

Ikuti di terminal (Git Bash untuk Windows). Ganti nama dan email dengan milikmu.

git --version
git config --global user.name "Nama Kamu"
git config --global user.email "kamu@contoh.com"
git config --global init.defaultBranch main
git config --global alias.st status
git config --list

Output terakhir minimal memuat baris:

user.name=Nama Kamu
user.email=kamu@contoh.com
init.defaultbranch=main
alias.st=status

Lalu buka file konfigurasi globalmu untuk melihat bentuk aslinya:

cat ~/.gitconfig
[user]
	name = Nama Kamu
	email = kamu@contoh.com
[init]
	defaultBranch = main
[alias]
	st = status

Kesalahan umum

  • Lupa --global saat setup pertama di luar repo. Di luar repositori, git config user.name "..." tanpa opsi level akan gagal dengan fatal: not in a git directory.
  • Salah ketik email. Commit yang sudah terkirim tetap membawa email salah itu. Cek dengan git config user.email sebelum commit pertama.
  • Menutup editor tanpa menyimpan. Kalau core.editor belum diatur dan Vim terbuka, ketik :wq lalu Enter untuk menyimpan dan keluar.
  • Membagikan kunci privat. Yang ditempel ke GitHub hanya file berakhiran .pub.

Rangkuman

  • Pasang Git lewat Git for Windows (dengan Git Bash), Xcode CLT atau Homebrew di macOS, dan apt di Linux, lalu cek dengan git --version.
  • Atur user.name dan user.email sebelum commit pertama, karena keduanya tertanam permanen di setiap commit.
  • init.defaultBranch main dan core.editor membuat Git lebih nyaman, dan git config --list menampilkan semua pengaturan.
  • Konfigurasi punya tiga level: system, global (~/.gitconfig), dan local (.git/config), dengan yang lebih spesifik menang.
  • SSH key ed25519 disiapkan sekarang untuk autentikasi ke GitHub nanti.

Selesaikan bab ini

  1. 1. Baca materi
  2. 2. Kuis (4 soal)

Cek pemahaman

  1. 1Perintah dijalankan berurutan di dalam repositori proyek-kantor. Apa output perintah terakhir?

    $ git config --global user.email "rani@contoh.com"
    $ cd proyek-kantor
    $ git config --local user.email "kerja@kantor.com"
    $ git config user.email
  2. 2Di file mana pengaturan `git config --global` disimpan?

  3. 3Untuk kunci yang sama, nilai --local menimpa nilai --global di repositori tersebut.

  4. 4Perintah mana yang membuat `git init` memakai nama branch main?