Dalam sebuah Repo, biasanya terdapat folder atau file yang bersifat rahasia atau kita tidak ingin simpan di Remote Repo. Untuk menjawab kebutuhan tersebut , kita perlu membuat dan mengatur file .gitignore.
File .gitignore berisi daftar file atau folder tidak akan diikutsertakan dikirim ke Remote Repo.
Melanjutkan latihan sebelumnya di artikel Bekerja Dengan Remote Repository di Github,
Sekarang kita buat :
1. Folder baru bernama config dan berisi config.txt
2. File baru bernama rahasia.txt
Sehingga struktur nya adalah sebagai berikut :
test1/
┣ config/
┃ ┗ config.txt
┣ modul1/
┃ ┗ isimodul1.txt
┣ fileutama.txt
┗ rahasia.txt
Tampilan di VS Code nya adalah sebagai berikut

Sekarang buatlah sebuah file .gitignore yang isinya adalah sebagai berikut :
/config
rahasia.txt

Terlihat Folder config beserta isinya dan file rahasia.txt sekarang berwarna abu-abu. Artinya ini tidak akan dimonitor perubahannya oleh Git dan tidak akan ikut ke Remote Repo jika dilakukan push.
Sekarang kita akan commit proses ini dengan message Tambah file gitignore

Kemudian lakukan push dengan perintah
git push origin master
Maka isi di Remote Repo adalah sebagai berikut. Folder config beserta isinya dan file rahasia.txt tidak ikut ke Remote Repo

Untuk memudahkan pengguna, ada beberapa template .gitignore yang siap digunakan disesuaikan dengan project yang sedang dikembangkan.
Template 1 : Ada saat pembuatan Repo di Github
Pada saat membuat Repo baru, jika kita pilih Add .gitignore, maka isi .gitignore bisa disesuaikan dengan project kita, misalnya kita sedang mengembangkan sebuah website menggunakan CodeIgniter, maka kita pilih Template nya CodeIgniter

Template 2 : GitIgnore Generator -> contohnya gitignore.io
Silahkan akses ke gitignore.io lalu masukan tempate yang diinginkan. Contohnya kita ingin template .gitignore untuk CodeIgniter seperti gambar di bawah ini :

Setelah menekan tombol Create, maka hasil generate nya adalah sebagai berikut. Silahkan disesuaikan jika masih belum pas dengan kebutuhan.
#Created by https://www.toptal.com/developers/gitignore/api/codeigniter
#Edit at https://www.toptal.com/developers/gitignore?templates=codeigniter
### CodeIgniter ###
*/config/development
*/logs/log-.php !/logs/index.html
/cache/
!/cache/index.html !/cache/.htaccess
user_guide_src/build/*
user_guide_src/cilexer/build/*
user_guide_src/cilexer/dist/*
user_guide_src/cilexer/pycilexer.egg-info/*
#codeigniter 3
application/logs/*
!application/logs/index.html
!application/logs/.htaccess
/vendor/
###CodeIgniter Patch###
#End of https://www.toptal.com/developers/gitignore/api/codeigniter