Lewati ke konten utama

Cara Menggunakan .gitignore: Pengantar Praktis dengan Contoh

Pelajari cara menggunakan .gitignore untuk menjaga repositori Git Anda tetap bersih. Tutorial ini membahas dasar-dasar, kasus penggunaan umum, dan contoh praktis untuk membantu Anda memulai!
Diperbarui 4 Jun 2026  · 8 mnt baca

Saat bekerja dengan Git, menjaga repositori tetap bersih dan teratur bukan sekadar praktik terbaik—itu penting untuk kolaborasi yang lancar dan pengendalian versi yang efisien. Di sinilah .gitignore berperan. File praktis ini memberi tahu Git file mana yang harus diabaikan, mencegah kekacauan yang tidak perlu dan membuat commit Anda fokus pada hal yang benar-benar penting.

Tanpa .gitignore, repo Anda bisa cepat dipenuhi file sementara, log, dan hal lain yang tidak semestinya berada dalam version control. Lebih buruk lagi, Anda bisa tanpa sengaja membagikan informasi sensitif.

Dalam tutorial ini, Anda akan mempelajari cara membuat dan menggunakan file .gitignore untuk menjaga proyek tetap rapi, menghindari jebakan umum, dan bekerja lebih efektif dengan Git. Mari mulai!

Apa itu File .gitignore?

File .gitignore adalah file konfigurasi yang digunakan di Git untuk memberi instruksi sistem pengendalian versi mengenai file atau direktori mana yang harus diabaikan saat perubahan di-stage atau di-commit. 

File ini mencegah file yang tidak perlu—seperti file sementara, yang dihasilkan sistem, atau terkait build—mengotori repositori Anda. Menjaga repositori tetap bersih memudahkan kolaborasi dan memastikan hanya file esensial yang dilacak.

File .gitignore adalah file teks sederhana yang ditempatkan di direktori root repositori Git Anda. Isinya berupa pola yang memberi tahu Git file atau direktori mana yang harus diabaikan. Pola ini dapat disesuaikan dengan kebutuhan proyek Anda, membantu Anda mempertahankan repositori yang tertata baik.

Baru mengenal Git dan GitHub? Dapatkan pengantar ramah pemula tentang version control melalui tutorial GitHub dan Git ini.

Berikut beberapa kategori file dan direktori umum yang sebaiknya Anda abaikan:

  • Artefak build: File yang dihasilkan selama proses build dan dapat dibuat ulang dari kode sumber, seperti:
    • dist/, build/ (Output build frontend dan backend)
    • target/ (Build Java dan bahasa terkompilasi lainnya)
  • Dependensi: Sistem manajemen paket membuat direktori untuk pustaka yang terinstal, yang tidak boleh dilacak:
    • node_modules/ (Node.js)
    • vendor/ (PHP, Composer)
    • .venv/, venv/ (Lingkungan virtual Python)
  • File spesifik sistem: File ini dibuat otomatis oleh sistem operasi dan tidak berkontribusi pada proyek:
    • .DS_Store (macOS)
    • Thumbs.db (Windows)
  • File konfigurasi IDE: Setiap pengembang mungkin menggunakan lingkungan pengembangan yang berbeda, jadi pengaturan pribadi mereka tidak boleh disertakan dalam version control:
    • .vscode/ (VS Code)
    • .idea/ (IDE JetBrains)
    • .project, .settings/ (Eclipse)
  • Log dan file sementara: Log, cache, dan file sementara harus diabaikan untuk mencegah kekacauan yang tidak perlu:
    • *.log, npm-debug.log*, yarn-debug.log*, yarn-error.log* (Log dari berbagai alat)
    • *.tmp, *.bak (File sementara dan cadangan)
    • .mypy_cache/, __pycache__/ (Cache Python)
    • .ipynb_checkpoints/ (Checkpoint Jupyter Notebook)
  • File environment dan rahasia: Kredensial sensitif dan konfigurasi khusus environment tidak boleh di-commit:
    • .env, .env.local, .env.development, .env.production
    • secrets.json, config.json (File konfigurasi sensitif)
  • File basis data dan penyimpanan: Ini dibuat secara lokal dan tidak boleh disertakan dalam version control:
    • *.sqlite, *.sqlite3, *.db (File basis data SQLite)
    • dump.rdb (Dump basis data Redis)
  • File CI/CD dan cakupan: Laporan cakupan pengujian dan artefak CI/CD lainnya harus diabaikan:
    • coverage/, *.lcov (Laporan cakupan kode)
    • .tox/, .pytest_cache/ (File pengujian Python)

Perlu memasang Git? Ikuti panduan langkah demi langkah di tutorial instalasi Git ini untuk menyiapkannya dengan cepat.

Sintaks .gitignore

Seperti disebutkan, file .gitignore berisi pola yang dicocokkan dengan nama file di repositori Anda untuk menentukan apakah file tersebut harus diabaikan atau tidak.

Sintaks dasar

Pada dasarnya, file .gitignore terdiri dari baris-baris, masing-masing mewakili pola yang akan diabaikan. Pola dapat mencocokkan:

  • File tertentu
  • Jenis file
  • Direktori 

File ini juga mendukung komentar, yang dapat ditambahkan dengan memulai baris dengan #, serta baris kosong untuk meningkatkan keterbacaan.

Berikut gambaran struktur dasarnya:

  • Abaikan file tertentu: Anda dapat mencantumkan nama file secara langsung untuk mengabaikannya.
secrets.txt
  • Abaikan seluruh direktori: Dengan menambahkan / di akhir nama direktori, Anda dapat mengabaikan semua yang ada di dalam direktori tersebut.
logs/
  • Abaikan semua file dari jenis tertentu: Wildcard (*) dapat digunakan untuk mengabaikan semua file dengan ekstensi tertentu.
*.py
  • Negasi: Anda dapat menggunakan ! untuk menegasikan pola dan secara eksplisit melacak file atau direktori tertentu yang sebaliknya akan diabaikan.
*.txt  # Ignores all .txt files
!readme.txt  # Except for readme.txt

Cara Membuat dan Menggunakan File .gitignore

Membuat dan menggunakan .gitignore cukup mudah. Pada bagian ini, saya akan membahas langkah-langkahnya.

Membuat file .gitignore

Langkah 1: Masuk ke root repositori Anda. File .gitignore biasanya ditempatkan di direktori root proyek Git. Buka terminal atau command line dan masuk ke direktori root repositori Git Anda:

cd /path/to/your/repo

Langkah 2: Buat file .gitignore. Setelah berada di direktori root, buat file .gitignore menggunakan editor teks apa pun atau dengan menjalankan perintah di terminal, seperti:

touch .gitignore

Langkah 3: Tambahkan pola ke file. Buka file .gitignore di editor teks dan tambahkan pola yang diperlukan untuk mengabaikan file atau direktori. Setiap baris mewakili pola yang berbeda.

Berikut contoh file .gitignore yang umum digunakan di proyek dasar:

# Ignore node_modules and dependency directories
node_modules/
vendor/

# Ignore build artifacts
dist/
build/
*.log

# Ignore system-generated files
.DS_Store
Thumbs.db

# Ignore environment and secret files
.env
config.json

Setelah Anda menambahkan pola yang diperlukan, simpan file tersebut. Git kini akan otomatis mengabaikan file-file ini saat men-stage atau melakukan commit perubahan.

Langkah 4: Commit file ke repositori. Penting untuk melakukan commit pada file .gitignore ke repositori agar semua kolaborator menggunakan aturan pengabaian yang sama. Ini memastikan konsistensi di seluruh proyek bagi semua yang terlibat.

git add .gitignore
git commit -m "Add .gitignore file"
git push

Setelah file .gitignore di-commit, Anda menetapkan aturan pengabaian bersama untuk seluruh tim.

Ingin menguasai push dan pull di Git? Pelajari cara menyinkronkan pekerjaan Anda dengan repositori jarak jauh di tutorial push dan pull Git ini.

Praktik Terbaik dalam Menggunakan .gitignore

Meskipun membuat file .gitignore adalah bagian yang mudah dalam menjaga repositori Git tetap bersih, ada beberapa praktik terbaik yang harus diikuti agar file ini dikelola secara efektif dari waktu ke waktu.

Gunakan .gitignore global

Bagi pengembang yang bekerja di banyak proyek, ada file tertentu yang mungkin ingin Anda kecualikan dari setiap repositori, apa pun jenis proyeknya.

Alih-alih menambahkannya ke file .gitignore setiap proyek, Anda dapat mengonfigurasi .gitignore global yang berlaku untuk semua repositori di sistem Anda.

Untuk mengonfigurasi file .gitignore global:

  • Buat file .gitignore_global:
touch ~/.gitignore_global
  • Tambahkan pola untuk file yang ingin Anda abaikan secara global, misalnya:
.DS_Store
*.log
/.vscode/
/.idea/
  • Atur Git untuk menggunakan .gitignore global:
git config --global core.excludesfile ~/.gitignore_global

Manfaatkan templat yang sudah ada

Alih-alih membuat file .gitignore dari nol untuk setiap proyek baru, Anda dapat memanfaatkan templat .gitignore pra-konfigurasi untuk bahasa, kerangka kerja, atau environment tertentu.

Salah satu sumber terbaik untuk templat tersebut adalah repositori .gitignore resmi GitHub, di mana Anda dapat menemukan file .gitignore yang disesuaikan untuk ratusan bahasa pemrograman dan kerangka kerja.

Tinjau .gitignore secara berkala

Seiring perkembangan proyek, mungkin ada file dan direktori baru yang perlu dimasukkan ke file .gitignore. Penting untuk meninjau dan memperbarui file Anda secara berkala agar mencerminkan keadaan proyek saat ini.

Beberapa skenario ketika Anda mungkin perlu memperbarui file .gitignore meliputi:

  • Mengadopsi alat atau pustaka baru yang menghasilkan file tambahan (misalnya, beralih ke sistem build baru).
  • Refaktor atau reorganisasi direktori, yang dapat menghasilkan file baru yang harus dikecualikan.
  • Menghapus file atau direktori usang yang bukan lagi bagian dari proyek.

Pemecahan Masalah .gitignore

Bahkan setelah menyiapkan file .gitignore, Anda mungkin menemui skenario di mana file tertentu masih dilacak, atau polanya tidak berfungsi seperti yang diharapkan. Bagian ini membahas dua area pemecahan masalah umum dan cara mengatasinya.

Melacak file yang sudah di-commit 

File .gitignore tidak berlaku surut untuk file yang sudah di-commit. 

Jika Anda menambahkan pola ke .gitignore setelah file tertentu sudah di-commit, Git akan terus melacaknya meskipun file tersebut cocok dengan pola di file .gitignore.

Untuk berhenti melacak file yang sudah di-commit, ikuti langkah-langkah berikut:

  • Hapus file dari pelacakan Git: Gunakan perintah git rm untuk menghapusnya dari repositori sambil tetap menyimpannya di working directory Anda.
git rm --cached <file_or_directory_name>
  • Commit perubahan: Setelah menghapus file dari pelacakan Git, lakukan commit perubahan untuk memastikan file tersebut tidak lagi menjadi bagian dari riwayat version control.
git commit -m "Stop tracking ignored files"
  • Push perubahan ke repositori jarak jauh: Terakhir, push perubahan ke repositori jarak jauh untuk memastikan file tersebut tidak lagi dilacak.
git push

Setelah melakukan langkah-langkah ini, Git akan berhenti melacak file tersebut. File yang telah di-commit akan tetap ada di working directory Anda tetapi akan diabaikan oleh commit selanjutnya berdasarkan pola .gitignore Anda.

Pastikan pola berfungsi 

Terkadang, Anda mungkin melihat file tertentu yang Anda harapkan untuk diabaikan tetap muncul di status Git atau masih dilacak. 

Ikuti langkah-langkah berikut untuk memastikan pola .gitignore Anda berfungsi dengan benar:

  • Periksa status file Anda: Gunakan perintah git status untuk melihat file mana yang sedang dilacak oleh Git. Ini akan membantu Anda memverifikasi apakah file yang diabaikan masih terdaftar.
git status
  • Pastikan polanya benar: Periksa kembali sintaks pola .gitignore Anda untuk memastikan formatnya benar. Misalnya:
    • Pastikan Anda menggunakan path direktori yang benar (relatif terhadap root repositori).
    • Tambahkan / untuk menargetkan direktori tertentu guna mencegah pelacakan semua file dengan nama serupa.
  • Segarkan cache: Jika Anda baru saja memperbarui file .gitignore dan perubahannya belum diterapkan, Git mungkin masih menyimpan cache sebelumnya. Untuk menyegarkan cache, jalankan perintah berikut:
git rm -r --cached .
git add .
git commit -m "Refresh .gitignore"
  • Periksa pengecualian: Terkadang, pola tertentu di .gitignore dapat ditimpa oleh pola yang lebih spesifik di tempat lain dalam file. Tinjau aturan Anda untuk memastikan tidak ada pola yang bertentangan.

Mencari referensi Git cepat? Simpan perintah penting di ujung jari Anda dengan lembar contekan Git ini.

Kesimpulan

File .gitignore mungkin terlihat kecil, tetapi berperan besar dalam menjaga repositori Git Anda tetap bersih dan mudah dikelola. Dengan mengabaikan file yang tidak perlu—seperti dependensi, artefak build, dan file yang dihasilkan sistem—Anda memastikan proyek tetap teratur dan bebas dari kekacauan.

Dalam tutorial ini, Anda telah mempelajari cara membuat file .gitignore, menambahkan pola, dan menerapkan praktik terbaik untuk menjaga repo tetap efisien. Dengan keterampilan ini, Anda akan menghindari sakit kepala seputar version control dan membuat kolaborasi lebih lancar bagi semua anggota tim.

Jika Anda ingin memperdalam keterampilan Git, lihat Git Fundamentals untuk jalur belajar terstruktur. Anda juga dapat menjelajahi kursus praktik seperti Foundations of Git dan Introduction to GitHub Concepts untuk membangun pemahaman yang kuat tentang version control dan alur kerja kolaborasi!

FAQs

Apakah .gitignore menghapus file yang sudah dilacak oleh Git?

Tidak, .gitignore hanya mencegah file baru dilacak. Jika sebuah file sudah ada dalam version control, menambahkannya ke .gitignore tidak akan menghapusnya. Untuk berhenti melacak file yang sudah di-commit, Anda perlu menggunakan:

git rm --cached filename

Lalu, lakukan commit perubahan.

Bisakah saya memiliki beberapa file .gitignore dalam satu proyek?

Ya! Anda dapat menempatkan file .gitignore di berbagai direktori dalam proyek Anda. Masing-masing hanya berlaku untuk file di direktori tersebut dan subdirektorinya.

Bagaimana cara mengabaikan semua file dengan jenis tertentu?

Anda dapat menggunakan wildcard. Misalnya, untuk mengabaikan semua file .log:

*.log

Ini akan mengecualikan semua file dengan ekstensi .log.

Bisakah saya mengabaikan file tertentu tetapi tetap melacaknya untuk pekerjaan saya sendiri?

Ya, tetapi Anda harus memastikan secara manual agar file tersebut tidak ter-commit. Salah satu caranya adalah menggunakan git update-index --assume-unchanged filename, sebagai solusi sementara. Pendekatan yang lebih baik adalah menggunakan file .gitignore global (lihat pertanyaan berikutnya).

Apa itu file .gitignore global, dan bagaimana cara menyiapkannya?

File .gitignore global digunakan untuk mengabaikan file di semua repositori pada mesin Anda. Ini berguna untuk file spesifik sistem seperti .DS_Store atau Thumbs.db. Untuk membuat dan mengonfigurasi .gitignore global:

git config --global core.excludesfile ~/.gitignore_global

Lalu, tambahkan pola ke ~/.gitignore_global sesuai kebutuhan.

Mengapa file .gitignore saya tidak berfungsi?

Jika .gitignore tidak mengabaikan sebuah file, periksa beberapa masalah umum berikut:

  • File tersebut sudah dilacak—Anda perlu menghapusnya menggunakan git rm --cached filename.
  • Pola .gitignore mungkin salah—periksa kembali sintaks Anda.
  • Ada aturan yang bertentangan—Git menerapkan aturan yang cocok terakhir, jadi urutan itu penting.

Bisakah saya mengabaikan sebuah direktori tetapi menyimpan file tertentu di dalamnya?

Ya! Gunakan aturan pengecualian. Misalnya, untuk mengabaikan semua isi folder kecuali keepme.txt:

folder_name/*
!folder_name/keepme.txt

Apa yang terjadi jika dua anggota tim memiliki file .gitignore yang berbeda?

Jika .gitignore di-commit ke repositori, semua anggota tim akan mengikuti aturan yang sama. Namun, jika seseorang mengubah .gitignore secara lokal tetapi tidak melakukan commit perubahannya, ia mungkin memiliki file yang diabaikan berbeda. Sebaiknya .gitignore diberi versi dan disepakati oleh tim.

Bagaimana saya dapat memeriksa file mana yang diabaikan?

Jalankan perintah berikut untuk melihat apa yang dikecualikan oleh .gitignore:

git status --ignored

Atau, untuk daftar yang lebih detail:

git check-ignore -v filename

Bisakah saya membatalkan pengabaian sebuah file di .gitignore?

Ya! Hapus file dari .gitignore lalu lacak kembali menggunakan:

git add filename

Lalu, lakukan commit perubahan.


Kurtis Pykes 's photo
Author
Kurtis Pykes
LinkedIn
Topik

Pelajari lebih lanjut tentang Git dengan kursus-kursus ini!

Kursus

Pendahuluan Konsep GitHub

2 Hr
42.9K
Pelajari cara menggunakan berbagai fitur GitHub, menavigasi antarmuka, dan melakukan tugas kolaboratif sehari-hari.
Lihat DetailRight Arrow
Mulai Kursus
Lihat Lebih BanyakRight Arrow
Terkait

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

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

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

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

Lihat Lebih BanyakLihat Lebih Banyak