Dalam satu team, bisa jadi editor yang digunakan berbeda-beda. Ada yang menggunakan IDE seperti WebStorm, NetBeans, whatever. Dan saya sering jengkel dengan commit yang mengikutsertakan file-file yang tidak seharusnya di-commit.

Pada kasus WebStorm (atau JetBrains IDE lainnya), bisa jadi programmer mengikutsertakan folder .idea, atau nbproject pada NetBeans. Folder ini tidak seharusnya dimasukkan ke VCS (Versioning Control System).

Pengguna Windows juga sering mengikutsertakan file seperti Thumbs.db. Lain lagi dengan pengguna Mac OS X yang seringkali memasukkan .DS_Store ke VCS.

File-file tersebut tidak perlu dimasukkan ke VCS, dan tidak perlu juga dimasukkan ke .gitignore pada root project.

Yang paling membuat saya heran,

  • Apa mereka ini tidak melakukan review terlebih dahulu sebelum commit? :/
  • Bukannya kalau menggunakan fitur VCS di IDE (atau Git GUI) ada check list sebelum commit?
  • Apa semuanya langsung menggunakan git add . ?!?

Seharusnya sebelum melakukan commit, programmer melalukan review terlebih dahulu dengan git status. Pastikan yang masuk ke staging hanya file-file yang relevan dengan task yang dikerjakan.

Jika tidak sengaja memasukkan file yang tidak seharusnya, kan bisa remove dan commit ulang dengan menggunakan git commit --amend. :/

Solusi

Untuk kasus-kasus seperti ini, gunakanlah global git ignore. Ini sama dengan file .gitignore pada project anda, tapi berlaku secara global dan tidak perlu dimasukkan pada tiap project. Global yang dimaksud di sini dalam lingkup user, bukan system-wide.

Kita bisa cek global git ignore sudah di-set atau belum dengan perintah

git ignore --global

By default lokasi global git ignore ada di ~/.config/git/ignore. Cukup tambahkan pattern pada file tersebut, and done!

Untuk list yang biasa dimasukkan ke global git ignore, bisa anda cek di https://github.com/github/gitignore/tree/master/Global atau https://www.gitignore.io/

Untuk informasi lebih detail, silahkan periksa manual dengan man git-ignore dan man git-config, cek pada core.excludesFile.

Hufftt… malah jadi curhat -_-

Iklan

7 pemikiran pada “Global Git Ignore

    1. Coba jalankan

      git config core.excludesfile
      

      Pasti keluar kayak gini ~/.gitignore_global

      Cek detailnya seperti di paragraf/quote terakhir.

Tinggalkan Balasan

Please log in using one of these methods to post your comment:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s