Kembali ke Beranda
DevOps

Perintah-Perintah Umum Git

Panduan lengkap perintah Git mulai dari dasar hingga lanjutan, mencakup fungsi, contoh penggunaan, workflow harian developer, serta praktik terbaik dalam pengelolaan source code modern

Git adalah sistem version control yang digunakan untuk mencatat perubahan kode, mengelola kolaborasi tim, serta menjaga riwayat pengembangan aplikasi. Saat ini Git menjadi standar de facto dalam pengembangan perangkat lunak modern.

Dengan Git, developer dapat mengetahui siapa yang melakukan perubahan, kapan perubahan dilakukan, membandingkan versi kode, hingga mengembalikan kondisi aplikasi ke versi sebelumnya jika terjadi kesalahan.


Mengapa Git Penting?

Sebelum Git populer, banyak developer menyimpan file dengan nama seperti:

aplikasi_final.zip
aplikasi_final_fix.zip
aplikasi_final_fix_revisi.zip
aplikasi_final_fix_revisi_final.zip

Metode tersebut sulit dikelola, terutama ketika banyak orang bekerja pada project yang sama.

Git menyelesaikan masalah tersebut dengan:

  • Menyimpan riwayat perubahan secara lengkap.
  • Memungkinkan kolaborasi banyak developer.
  • Memudahkan rollback ketika terjadi kesalahan.
  • Mendukung workflow CI/CD modern.
  • Terintegrasi dengan GitHub, GitLab, Bitbucket, dan platform DevOps lainnya.

Struktur Dasar Git

Sebelum memahami perintah Git, penting memahami alurnya:

Working Directory
        ↓
    git add
        ↓
  Staging Area
        ↓
   git commit
        ↓
   Local Repository
        ↓
    git push
        ↓
 Remote Repository

1. git init

Digunakan untuk membuat repository Git baru.

git init

Contoh:

mkdir aplikasi-saya
cd aplikasi-saya
git init

Output:

Initialized empty Git repository

Git akan membuat folder tersembunyi:

.git/

Folder tersebut berisi seluruh informasi repository.


2. git clone

Digunakan untuk menyalin repository yang sudah ada.

git clone <repository-url>

Contoh:

git clone https://github.com/user/project.git

Hasil:

project/
├── .git
├── src
├── pom.xml
└── README.md

Biasanya digunakan saat pertama kali bergabung ke sebuah project.


3. git status

Menampilkan kondisi repository saat ini.

git status

Contoh output:

modified: index.html
new file: login.html

Informasi yang ditampilkan:

  • File baru
  • File berubah
  • File yang sudah di-stage
  • Branch aktif

Perintah ini adalah salah satu yang paling sering digunakan.


4. git add

Menambahkan perubahan ke staging area.

Menambahkan satu file:

git add index.html

Menambahkan semua perubahan:

git add .

Penjelasan:

Working Directory
        ↓
     git add
        ↓
   Staging Area

File yang belum di-add tidak akan ikut saat commit.


5. git commit

Menyimpan perubahan ke riwayat Git.

git commit -m "Menambahkan fitur login"

Contoh:

git commit -m "Perbaikan validasi email"

Commit yang baik harus:

  • Singkat
  • Jelas
  • Menjelaskan perubahan

Contoh buruk:

git commit -m "update"

Contoh baik:

git commit -m "Perbaiki validasi format email pada form registrasi"

6. git log

Menampilkan riwayat commit.

git log

Output:

commit 7af3d91
Author: Developer
Date: ...

Versi ringkas:

git log --oneline

Contoh:

7af3d91 Tambah fitur login
5bc2a11 Perbaiki validasi
1ac90de Initial commit

7. git diff

Melihat perubahan sebelum commit.

git diff

Contoh:

- echo "Hello"
+ echo "Hello World"

Melihat perubahan yang sudah di-stage:

git diff --staged

Sangat berguna untuk melakukan pengecekan sebelum commit.


8. git branch

Melihat daftar branch.

git branch

Output:

* main
  develop

Membuat branch baru:

git branch fitur-login

9. git checkout

Berpindah branch.

git checkout fitur-login

Membuat branch sekaligus berpindah:

git checkout -b fitur-login

10. git switch

Alternatif modern untuk berpindah branch.

Pindah branch:

git switch main

Membuat branch baru:

git switch -c fitur-payment

Lebih mudah dipahami dibanding checkout.


11. git merge

Menggabungkan branch.

Contoh:

git switch main
git merge fitur-login

Ilustrasi:

main
  |
  +---- fitur-login
            |
            + commit baru

git merge

main
  |
  + commit hasil gabungan

12. git remote

Melihat remote repository.

git remote -v

Output:

origin https://github.com/user/project.git

Menambahkan remote:

git remote add origin https://github.com/user/project.git

13. git push

Mengirim commit ke server Git.

git push origin main

Branch baru:

git push -u origin fitur-login

Penjelasan:

Local Repository
        ↓
     git push
        ↓
Remote Repository

14. git pull

Mengambil perubahan terbaru dari server.

git pull origin main

Git akan:

  1. Download perubahan.
  2. Melakukan merge otomatis.

15. git fetch

Mengambil update tanpa merge.

git fetch

Perbedaan:

PerintahDownloadMerge
git fetchYaTidak
git pullYaYa

16. git reset

Membatalkan perubahan di staging area.

git reset index.html

Reset ke commit tertentu:

git reset --hard a1b2c3

⚠️ Hati-hati menggunakan --hard karena dapat menghapus perubahan lokal.


17. git restore

Mengembalikan file.

git restore index.html

Mengeluarkan file dari staging:

git restore --staged index.html

18. git stash

Menyimpan perubahan sementara.

git stash

Melihat daftar stash:

git stash list

Mengembalikan stash:

git stash pop

Contoh kasus:

  • Sedang mengerjakan fitur A.
  • Tiba-tiba harus memperbaiki bug di branch lain.

Gunakan stash agar pekerjaan sementara tidak hilang.


19. git tag

Menandai versi aplikasi.

Membuat tag:

git tag v1.0.0

Melihat tag:

git tag

Push tag:

git push origin v1.0.0

Biasanya digunakan untuk release.


20. git rm

Menghapus file dari Git.

git rm old-file.txt

Lalu commit:

git commit -m "Menghapus file lama"

21. git mv

Mengubah nama file.

git mv lama.txt baru.txt

Atau memindahkan file:

git mv file.txt folder/

22. git config

Mengatur identitas Git.

Nama:

git config --global user.name "Nama Anda"

Email:

git config --global user.email "email@domain.com"

Melihat konfigurasi:

git config --list

23. git rebase

Merapikan riwayat commit.

git rebase main

Ilustrasi:

main
  |
  A---B---C

feature
        \
         D---E

Setelah rebase:

A---B---C---D---E

Riwayat menjadi lebih bersih.


24. git cherry-pick

Mengambil commit tertentu.

git cherry-pick a1b2c3

Cocok ketika hanya satu commit yang ingin dipindahkan ke branch lain.


25. git revert

Membatalkan commit dengan aman.

git revert a1b2c3

Git akan membuat commit baru yang membatalkan perubahan sebelumnya.

Lebih aman digunakan pada repository bersama dibanding reset.


Workflow Git Harian

Contoh workflow developer sehari-hari:

git pull origin main

git switch -c fitur-login

git add .

git commit -m "Menambahkan fitur login"

git push -u origin fitur-login

Penjelasan:

  1. Mengambil kode terbaru.
  2. Membuat branch fitur.
  3. Menambahkan perubahan.
  4. Commit.
  5. Push ke repository.

Perintah Git yang Paling Sering Digunakan

Dalam pekerjaan sehari-hari, sekitar 90% aktivitas developer hanya menggunakan:

git status
git add .
git commit -m "pesan"
git pull
git push
git branch
git switch
git merge
git log
git diff

Menguasai perintah-perintah tersebut sudah cukup untuk sebagian besar kebutuhan pengembangan aplikasi.


Kesalahan Umum Developer Pemula

Langsung bekerja di branch main

Hindari:

main

Gunakan:

git switch -c fitur-baru

Commit terlalu besar

Hindari:

git commit -m "Update project"

Setelah mengubah 50 file sekaligus.

Lebih baik:

git commit -m "Tambah validasi login"
git commit -m "Perbaiki tampilan dashboard"
git commit -m "Tambah API user"

Tidak melakukan pull sebelum push

Selalu lakukan:

git pull

Sebelum:

git push

Untuk menghindari konflik.


Penutup

Git bukan sekadar alat penyimpanan kode, tetapi fondasi utama kolaborasi dalam pengembangan perangkat lunak modern. Memahami perintah-perintah Git akan membantu developer bekerja lebih terstruktur, mengurangi risiko kehilangan kode, mempermudah kolaborasi tim, serta mendukung implementasi DevOps dan CI/CD secara profesional.

Semakin sering digunakan, Git akan menjadi bagian alami dari proses pengembangan. Kuncinya bukan menghafal semua perintah, melainkan memahami alur kerja dasar: ubah kode → add → commit → push → kolaborasi.

gitversion controlgithubgitlabdevopscicdsoftware developmentprogrammingdevelopersource code managementbranchingmergerebasesoftware engineeringnirantara technologytutorial gitbelajar gitworkflow developerteknologiengineering blog
Nirantara Logo

Published by Nirantara

Nirantara is an Indonesian Enterprise AI company specializing in Enterprise AI, RAG, Intelligent Search, and AI Automation. Article written by jsturana.

Learn more about Nirantara