Panduan Lengkap Git untuk Pemula: Dari Init Sampai Pull Request


Git adalah salah satu skill wajib yang harus dikuasai setiap developer. Tanpa Git, kolaborasi dalam tim development akan sangat sulit. Artikel ini akan membahas Git dari dasar hingga kamu bisa membuat pull request pertamamu.

Apa Itu Git?

Git adalah distributed version control system yang memungkinkan kamu melacak perubahan kode, berkolaborasi dengan tim, dan mengelola berbagai versi project. Git diciptakan oleh Linus Torvalds (pencipta Linux) pada tahun 2005.

Mengapa Git Penting?

  • Track Changes: Setiap perubahan tercatat dengan detail
  • Collaboration: Banyak developer bisa bekerja bersamaan
  • Backup: Kode tersimpan aman di remote repository
  • Branching: Eksperimen fitur baru tanpa merusak kode utama

Instalasi Git

Windows

Download installer dari git-scm.com dan jalankan installer.

macOS

brew install git

Linux (Ubuntu/Debian)

sudo apt update
sudo apt install git

Verifikasi instalasi:

git --version

Konfigurasi Awal

Sebelum mulai, konfigurasikan identitasmu:

git config --global user.name "Nama Kamu"
git config --global user.email "email@example.com"

Cek konfigurasi:

git config --list

Perintah Dasar Git

1. Membuat Repository Baru

# Buat folder project
mkdir project-baru
cd project-baru

# Inisialisasi Git
git init

2. Mengecek Status

git status

Output akan menunjukkan file mana yang sudah di-track, dimodifikasi, atau belum di-stage.

3. Menambahkan File ke Staging Area

# Tambah file spesifik
git add index.html

# Tambah semua file
git add .

# Tambah file dengan ekstensi tertentu
git add *.js

4. Membuat Commit

git commit -m "Pesan commit yang deskriptif"

Tips menulis commit message yang baik:

  • Gunakan present tense: “Add feature” bukan “Added feature”
  • Singkat tapi jelas (maksimal 50 karakter untuk judul)
  • Jelaskan apa dan mengapa, bukan bagaimana

5. Melihat History Commit

# History lengkap
git log

# History ringkas
git log --oneline

# History dengan graph
git log --oneline --graph --all

Bekerja dengan Branch

Branch memungkinkan kamu mengembangkan fitur secara terpisah dari kode utama.

Membuat Branch Baru

# Buat branch baru
git branch nama-branch

# Buat dan langsung pindah ke branch baru
git checkout -b nama-branch

# Atau dengan perintah modern
git switch -c nama-branch

Pindah Antar Branch

git checkout nama-branch
# atau
git switch nama-branch

Melihat Daftar Branch

# Branch lokal
git branch

# Semua branch (termasuk remote)
git branch -a

Menggabungkan Branch (Merge)

# Pindah ke branch tujuan (biasanya main)
git checkout main

# Merge branch fitur
git merge nama-branch-fitur

Menghapus Branch

# Hapus branch lokal
git branch -d nama-branch

# Force delete (jika belum di-merge)
git branch -D nama-branch

Bekerja dengan Remote Repository

Menghubungkan ke GitHub

# Tambah remote
git remote add origin https://github.com/username/repo.git

# Cek remote
git remote -v

Push ke Remote

# Push pertama kali
git push -u origin main

# Push selanjutnya
git push

Pull dari Remote

git pull origin main

Clone Repository

git clone https://github.com/username/repo.git

Membuat Pull Request

Pull Request (PR) adalah cara untuk mengusulkan perubahan kode ke repository orang lain atau branch utama.

Langkah-langkah:

  1. Fork repository (jika bukan milikmu)

  2. Clone ke lokal

    git clone https://github.com/username-kamu/repo.git
  3. Buat branch baru

    git checkout -b fitur-baru
  4. Lakukan perubahan dan commit

    git add .
    git commit -m "Add: fitur baru yang keren"
  5. Push ke repository kamu

    git push origin fitur-baru
  6. Buat Pull Request di GitHub

    • Buka repository di GitHub
    • Klik “Compare & pull request”
    • Isi deskripsi PR
    • Klik “Create pull request”

Mengatasi Konflik

Konflik terjadi ketika dua orang mengubah baris yang sama.

# Saat merge dan ada konflik
git merge fitur-branch
# Auto-merging file.txt
# CONFLICT (content): Merge conflict in file.txt

Buka file yang konflik, kamu akan melihat:

<<<<<<< HEAD
Kode dari branch saat ini
=======
Kode dari branch yang di-merge
>>>>>>> fitur-branch

Pilih kode yang benar, hapus marker konflik, lalu:

git add file.txt
git commit -m "Resolve merge conflict"

Tips dan Best Practices

1. Commit Sering, Push Teratur

Jangan menumpuk terlalu banyak perubahan dalam satu commit.

2. Gunakan .gitignore

Buat file .gitignore untuk mengabaikan file yang tidak perlu di-track:

# Dependencies
node_modules/
vendor/

# Environment
.env
.env.local

# Build output
dist/
build/

# IDE
.vscode/
.idea/

# OS files
.DS_Store
Thumbs.db

3. Jangan Commit Secrets

Jangan pernah commit password, API key, atau data sensitif lainnya.

4. Review Sebelum Commit

# Lihat perubahan sebelum commit
git diff

# Lihat perubahan yang sudah di-stage
git diff --staged

Perintah Berguna Lainnya

# Batalkan perubahan file (belum di-stage)
git checkout -- filename

# Unstage file
git reset HEAD filename

# Ubah commit terakhir
git commit --amend

# Simpan perubahan sementara
git stash
git stash pop

# Lihat siapa yang mengubah baris tertentu
git blame filename

Kesimpulan

Git adalah tool yang sangat powerful untuk version control. Dengan menguasai perintah-perintah dasar di atas, kamu sudah bisa:

  • Membuat dan mengelola repository
  • Bekerja dengan branch
  • Berkolaborasi dengan tim melalui pull request
  • Mengatasi konflik merge

Praktik adalah kunci! Semakin sering menggunakan Git, semakin terbiasa kamu dengan workflow-nya.


Referensi:

Komentar

Real-time

Memuat komentar...

Tulis Komentar

Email tidak akan ditampilkan

0/2000 karakter

Catatan: Komentar akan dimoderasi sebelum ditampilkan. Mohon bersikap sopan dan konstruktif.