Lewati ke konten utama

Git Status: Cara Melacak Perubahan di Proyek Anda dengan Penuh Keyakinan

Pelajari cara menggunakan perintah git status untuk memantau keadaan repositori Anda. Panduan ini cocok untuk pemula dan praktisi awal karier yang menginginkan alur kerja Git yang optimal.
Diperbarui 28 Sep 2026  · 15 mnt Baca

Jelajahi bersama AI

ChatGPTClaudePerplexity

Saat mengerjakan proyek Git yang kompleks, mudah untuk kehilangan jejak file mana yang telah dimodifikasi, di-staging, atau masih belum dilacak. Di sinilah git status berperan. Perintah Git penting ini memberikan gambaran yang jelas dan komprehensif tentang keadaan repositori saat ini—menyoroti file mana yang berubah, apa yang siap dikomit, dan apa yang masih perlu diperhatikan.

Baik saat Anda menyelesaikan konflik merge, meninjau perubahan yang di-staging, atau memastikan tidak ada yang tertinggal sebelum commit, git status memberikan visibilitas yang dibutuhkan untuk tetap teratur.

Dalam panduan ini, saya akan menjelaskan setiap bagian output git status dan membahas kustomisasi lanjutan, membantu Anda mendapatkan kontrol yang lebih baik atas alur kerja kontrol versi Anda.

Apa itu Git Status?

Perintah git status memberikan ringkasan waktu nyata tentang keadaan repositori Git Anda. Secara khusus, perintah ini membandingkan working directory (file lokal Anda) dan staging area (juga dikenal sebagai index) dengan snapshot commit terakhir. Ini memungkinkan Anda melihat file mana yang telah dimodifikasi, perubahan mana yang di-staging dan siap dikomit, serta file baru mana yang masih belum dilacak.

Dengan menjalankan git status, pengembang dapat memverifikasi bahwa perubahan yang tepat sedang di-staging atau di-commit, menangkap suntingan yang terlewat, dan menghindari memasukkan pembaruan yang belum lengkap. Ini sangat berharga saat mengelola banyak branch atau menyelesaikan konflik merge, karena memberikan umpan balik yang tepat tentang apa yang dilacak Git dan apa yang tidak.

Memahami bagaimana git status mencerminkan interaksi antara working tree, staging area, dan riwayat repositori adalah kunci untuk menggunakan Git secara efektif dan menghindari kesalahan umum.

Diagram di atas menggambarkan hubungan antara working directory, staging area, dan repositori (riwayat commit)—serta bagaimana git status berperan:

  • Perubahan yang belum di-staging (file yang dimodifikasi di working directory Anda) akan muncul sebagai "Changes not staged for commit."
  • Perubahan yang di-staging (file yang ditambahkan ke index dengan git add) muncul sebagai "Changes to be committed."
  • File yang belum dilacak (file baru yang belum pernah dilihat Git) juga akan dicantumkan, mendorong Anda untuk menambahkannya atau mengabaikannya.
  • Jika Anda sedang dalam proses merge, git status juga akan memberi tahu tentang konflik dan langkah selanjutnya yang perlu dilakukan.

Contoh output git status:

$ git status

On branch feature/login
Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
        modified:   src/auth.js

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        modified:   src/utils.js

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        src/new-feature.js

Untuk pemahaman yang lebih luas tentang Git dan perannya dalam version control, lihat panduan lengkap Git ini.

Cara Menggunakan Git Status

Berikut pendekatan langkah demi langkah untuk memanfaatkan git status secara efektif dalam alur kerja Anda.

Jika Anda belum mengonfigurasi Git, panduan penyiapan ini memandu Anda melalui instalasi dan konfigurasi awal di berbagai sistem.

Penggunaan dasar git status

  • Buka terminal Anda:

Gunakan terminal atau antarmuka baris perintah pilihan Anda. Ini memberi Anda akses langsung untuk menjalankan perintah Git dan melihat keadaan repositori Anda secara waktu nyata.

  • Masuk ke direktori proyek Anda:

Gunakan perintah cd untuk berpindah ke folder tempat proyek Git Anda berada.

cd /path/to/your/project
  • Jalankan git status:

Setelah berada di direktori proyek Anda, jalankan perintah berikut.

git status

Seperti yang kita lihat sebelumnya, Git akan menampilkan output yang biasanya mencakup:

  • Nama branch saat ini.
  • Daftar perubahan yang di-staging dan siap dikomit.
  • Daftar file yang dimodifikasi tetapi belum di-staging.
  • File yang belum dilacak—file baru yang belum ditambahkan ke Git.

Menggunakan format singkat

Jika Anda membutuhkan cuplikan cepat tanpa detail tambahan, format singkat adalah pilihan yang tepat:

git status --short

Tampilan ringkas ini mencantumkan setiap file dalam satu baris dengan simbol status, yang sangat berguna saat memindai perubahan tertentu atau mengintegrasikan perintah ini ke dalam skrip.

Contoh output:

 M index.html
A  new-script.js
?? temp.txt

Menafsirkan output:

  • Karakter pertama menunjukkan status di staging area.
  • Karakter kedua menunjukkan status di working directory.

Kode

Makna

M

Dimodifikasi

A

Ditambahkan

D

Dihapus

??

File tidak terlacak

MM

Dimodifikasi pada kedua tahap

AM

Ditambahkan, lalu dimodifikasi

Memahami opsi -u di git status

Opsi -u (singkatan dari --untracked-files) memungkinkan Anda mengontrol bagaimana file yang belum dilacak ditampilkan dalam output, yang dapat relevan pada proyek dengan banyak file yang dihasilkan. Berikut arti setiap mode:

  • normal (default)

Menampilkan file yang belum dilacak dalam format standar yang hemat ruang.

Contoh:

git status -u normal

Ini adalah perilaku standar yang paling sering dilihat pengembang saat menjalankan git status.

  • all

Mencantumkan setiap file yang belum dilacak—bahkan yang diabaikan secara default.

Contoh:

git status -u all

Mode ini memberi visibilitas menyeluruh, yang dapat membantu saat men-debug masalah pembuatan file atau meninjau apa yang dikecualikan melalui .gitignore.

  • no

Menyembunyikan file yang belum dilacak agar Anda dapat fokus hanya pada perubahan file yang sudah dilacak Git.

Contoh:

git status -u no

Dalam salah satu proyek besar saya—aplikasi Node.js dengan proses build yang kompleks—output git status penuh dengan file sementara, cache, dan artefak build. Menambahkan opsi -u no memungkinkan saya fokus secara eksklusif pada perubahan file yang dilacak tanpa gangguan dari file sementara atau yang dibuat otomatis.

Menyesuaikan output dengan --porcelain

Untuk tugas skrip atau otomatisasi, output yang dapat diprediksi itu penting. Opsi --porcelain menyediakan format git status yang bersih, stabil, dan mudah dibaca mesin, ideal untuk digunakan dalam alat kustom atau alur kerja CI/CD:

git status --porcelain

Mode ini meniru format singkat (--short) tetapi menjamin output yang konsisten di berbagai versi dan konfigurasi Git. Berbeda dengan git status default, yang mungkin menyertakan jeda baris ekstra, petunjuk, atau warna tergantung pada pengaturan pengguna, --porcelain menghapus semua pemformatan tersebut—memastikan skrip dapat mengurai output secara andal.

Langkah Selanjutnya Setelah Menjalankan Git Status

Setelah Anda menjalankan git status dan menganalisis output, saatnya menentukan langkah berikutnya—apakah itu melakukan staging file, meng-commit pembaruan, atau merapikan working directory Anda. Berikut cara melanjutkannya.

Melakukan staging file untuk commit

Staging menyiapkan perubahan Anda untuk dimasukkan dalam commit berikutnya. Anda dapat memilih untuk melakukan staging file tertentu atau semuanya sekaligus.

  • Staging file tertentu:

Gunakan ini saat Anda ingin kontrol yang presisi atas apa yang akan di-commit.

git add <file-name>
  • Staging semua perubahan:

Ini termasuk file yang dimodifikasi dan yang baru ditambahkan di direktori saat ini.

git add .
  • Staging hanya perubahan pada file yang sudah dilacak (tidak termasuk file baru yang belum dilacak):
git add -u

Saya menyarankan untuk meninjau perubahan menggunakan git status atau git diff dengan saksama sebelum melakukan staging agar tidak secara tidak sengaja menyertakan file yang tidak diinginkan. Memadukan git status dengan perintah git diff memberikan wawasan yang lebih dalam tentang apa yang berubah di file Anda.

Meng-commit perubahan

Setelah melakukan staging perubahan, langkah berikutnya adalah membuat commit. Pesan commit yang jelas dan deskriptif tidak hanya mencatat apa yang berubah, tetapi juga mengapa perubahan dilakukan—sehingga lebih mudah memahami riwayat proyek dari waktu ke waktu.

git commit -m "Describe your changes here"

Praktik terbaik untuk pesan commit:

  • Gunakan bentuk imperatif (mis., “Perbaiki bug login”, bukan “Memperbaiki bug login”).
  • Usahakan baris ringkasan di bawah 50 karakter bila memungkinkan.
  • Jika perlu, gunakan pesan multi-baris (git commit tanpa -m) untuk memisahkan ringkasan dan penjelasan terperinci.

Saya belajar bahwa meluangkan satu menit ekstra untuk menulis pesan commit yang bermakna dapat menghemat banyak waktu saat peninjauan atau sesi debugging di kemudian hari. Setelah perubahan Anda ditinjau, pertimbangkan melakukan squash commit untuk merapikan riwayat Git Anda.

Menangani file yang belum dilacak

File yang belum dilacak dapat membuat output git status menjadi berantakan, terutama pada proyek dengan artefak build, log, atau direktori dependensi. Jika ada file atau direktori yang tidak pernah ingin Anda lacak, Anda dapat mengecualikannya dengan menambahkan entri ke file .gitignore di root repositori Anda.

# Ignore dependency folders and log files
node_modules/
*.log

# Ignore system files
.DS_Store
Thumbs.db

Ini memastikan hanya file yang relevan yang ada di repositori Anda, menjaga output git status tetap bersih dan fokus. Saat Anda perlu menghapus file yang belum dilacak yang tersisa dari working directory Anda, git clean juga merupakan alat yang menarik.

Meninjau status secara berkala

Sering menjalankan git status adalah kebiasaan sederhana namun kuat yang membantu menjaga alur kerja pengembangan tetap bersih dan terkendali. Anda dapat menghindari kesalahan umum seperti meng-commit perubahan yang belum lengkap atau melewatkan file yang belum dilacak dengan memeriksa status working directory dan staging area secara berkala—terutama sebelum commit, beralih branch, atau merge.

Sekarang saya memasukkan langkah ini ke dalam rutinitas harian saya, sehingga secara signifikan mengurangi kesalahan dalam riwayat commit saya.

Pemecahan Masalah Umum pada Git Status

Meskipun sederhana, terkadang git status dapat menghasilkan informasi yang berlebihan atau membingungkan. Berikut beberapa masalah umum dan cara menanganinya.

File yang tidak diinginkan dan belum dilacak

Dalam proyek besar, terutama yang menggunakan berbagai alat build, Anda mungkin melihat banyak file yang tidak pernah bermaksud untuk dilacak. Jika ini muncul, verifikasi pengaturan .gitignore Anda, dan jika perlu, hapus dari pelacakan menggunakan:

git rm --cached <file-name>

Setelah memperbarui .gitignore dan menggunakan git rm --cached, jalankan git status lagi untuk memverifikasi bahwa file tersebut tidak lagi dilacak atau muncul tanpa perlu.

Output yang berlebihan

Dalam proyek dengan banyak file—terutama yang menghasilkan log, cache, atau aset sementara—output dari git status bisa menjadi bising dan sulit dipindai. Ini menyulitkan untuk fokus pada perubahan bermakna yang membutuhkan perhatian.

Dalam kasus ini, Anda dapat menampilkan ringkasan singkat, satu baris per file:

git status --short

Atau sembunyikan sepenuhnya file yang belum dilacak dari output:

git status -u no

Bersama-sama, opsi ini membuat git status lebih fokus dan mudah dicerna—terutama pada codebase yang lebih besar atau alur kerja otomatis.

Kesimpulan

Singkatnya, git status adalah alat yang sangat penting yang menawarkan jendela waktu nyata ke kesehatan repositori Anda. Dengan menguasai tampilan default, format singkat, dan opsi lanjutan seperti flag -u, Anda dapat menyederhanakan alur kerja Git dan menghindari jebakan umum. Bereksperimenlah dengan mode ini pada proyek Anda dan rasakan bagaimana kejelasan dalam mengelola perubahan mempercepat proses pengembangan Anda.

Jika Anda baru mengenal Git, memahami git status akan menjadi lebih kuat saat dipadukan dengan git init, perintah yang menginisialisasi repositori. Jika belum, silakan periksalah Tutorial Git Init saya untuk mempelajari cara menyiapkan repositori dari awal.

Dan jika Anda ingin memperdalam keterampilan Git lebih jauh, jelajahi kursus-kursus DataCamp berikut:

  • Intermediate Git – Tingkatkan keterampilan Anda dengan teknik branching, merging, dan penyelesaian konflik.
  • GitHub Foundations – Pelajari cara mengintegrasikan Git dengan GitHub untuk proyek kolaboratif.

Selamat ngoding—dan semoga selalu selaras sempurna dengan repositori Anda!

FAQs

Apa perbedaan git status dengan git diff?

Sementara git status menampilkan ringkasan perubahan, git diff menampilkan perbedaan konten sebenarnya antar file, menawarkan perbandingan yang lebih detail.

Bisakah saya menyesuaikan output git status?

Ya, dengan opsi seperti --short, --porcelain, dan -u, Anda dapat menyesuaikan output agar lebih ringkas atau ramah skrip, sesuai kebutuhan Anda.

Apa perbedaan perubahan staged dan unstaged di Git?

Perubahan yang di-staging ditambahkan ke index dan siap dikomit, sementara perubahan yang belum di-staging masih berada di working directory Anda dan belum ditandai untuk commit.

Bagaimana cara mengabaikan file yang muncul di git status?

Anda dapat menambahkan pola file ke file .gitignore untuk mencegah file tertentu (seperti log atau artefak build) muncul sebagai tidak terlacak di git status.

Mengapa file tidak terlacak terus muncul di git status?

File yang belum dilacak adalah file yang belum ditambahkan ke index Git. File tersebut akan terus muncul jika tidak diabaikan secara eksplisit di .gitignore atau di-staging dengan git add.

Bagaimana git status membantu mencegah commit yang buruk?

Dengan menjalankan git status sebelum commit, Anda dapat meninjau semua perubahan yang di-staging dan belum di-staging, memastikan Anda tidak melewatkan file atau secara tidak sengaja meng-commit sesuatu yang belum lengkap.

Apakah git status berguna untuk menyelesaikan konflik merge?

Tentu. git status menyoroti konflik dan memandu Anda cara menyelesaikannya sebelum menyelesaikan merge.

Seberapa sering saya harus menggunakan git status dalam alur kerja saya?

Sering! Menggunakan git status sebelum staging, commit, atau berpindah branch membantu Anda tetap teratur dan menghindari kesalahan yang mahal.


Khalid Abdelaty's photo
Author
Khalid Abdelaty
LinkedIn

Saya seorang data engineer dan pembangun komunitas yang bekerja lintas pipeline data, cloud, dan perkakas AI sambil menulis tutorial praktis dan berdampak tinggi untuk DataCamp dan pengembang yang sedang berkembang.

Topik
Git

Pelajari lebih lanjut tentang Git dengan kursus-kursus ini!

{count, plural, one {Kursus} other {Kursus}}

Pengantar Git

{hours} jam
102.1K
Pelajari dasar-dasar Git untuk version control dalam proyek perangkat lunak dan data Anda.
Lihat DetailRight Arrow
Mulai Kursus
Lihat SelengkapnyaRight Arrow
Terkait

{count, plural, one {blog} other {blogs}}

Tutorial Korelasi di R

Dapatkan pengenalan dasar-dasar korelasi di R: pelajari lebih lanjut tentang koefisien korelasi, matriks korelasi, plotting korelasi, dan sebagainya.
David Woods's photo

David Woods

13 mnt

{count, plural, one {blog} other {blogs}}

12 Alternatif ChatGPT Terbaik yang Bisa Anda Coba pada 2026

Artikel ini menyajikan daftar alternatif ChatGPT yang akan meningkatkan produktivitas Anda.
Javier Canales Luna's photo

Javier Canales Luna

14 mnt

{count, plural, one {blog} other {blogs}}

Spaghetti Plot dan Jalur Badai

Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
Hugo Bowne-Anderson's photo

Hugo Bowne-Anderson

13 mnt

{count, plural, one {blog} other {blogs}}

40 Pertanyaan Wawancara DBMS Teratas di 2026

Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Dario Radečić's photo

Dario Radečić

15 mnt

Lihat SelengkapnyaLihat Selengkapnya