Perbaiki: Gitignore tidak berfungsi
GitHub telah muncul sebagai pelopor terkemuka di bidang kolaborasi kode dan berbagi repositori. GitHub pada dasarnya adalah perangkat lunak kontrol versi yang memungkinkan pengguna mengontrol kontrol versi terdistribusi dan SCM (manajemen kode sumber). Platform ini digunakan oleh bisnis besar dan perusahaan di seluruh dunia.
Platform seperti ini memiliki teknis dan masalah. Satu masalah khusus yang dialami pembuat kode adalah .gitignore tidak berfungsi di GitHub. Platform mengabaikan .gitignore atau bekerja sebagian. Sangat menarik untuk dicatat bahwa masalahnya mungkin sedikit berbeda dalam setiap kasus karena setiap kasus adalah skenario yang sama sekali berbeda. Namun, solusi yang kami cantumkan akan berisi perbaikan yang akan berfungsi secara universal.
Apa itu .gitignore?
Git (atau GitHub) melihat setiap file di direktori kerja Anda. Ini mencirikan setiap file sebagai salah satu dari tiga:
- Dilacak: File-file ini baik dilakukan atau dipentaskan sebelumnya dalam sejarah.
- Tidak terlacak: Ini adalah file yang belum pernah dipentaskan atau dikomit sebelumnya.
- Diabaikan: Ini adalah file yang menurut pengguna sendiri harus diabaikan sepenuhnya.
File yang diabaikan ini dapat bervariasi dari skenario ke skenario dan sebagian besar merupakan file yang dihasilkan mesin atau artefak build. Ini adalah praktik umum; Anda mungkin mengabaikan berbagai file lain sesuai dengan kebutuhan Anda sendiri. Beberapa contoh file tersebut adalah:
- Kode yang dikompilasi: File-file ini biasanya dengan ekstensi .class, .pyc, .ccp dll.
- File sistem tersembunyi: Ini adalah file yang digunakan oleh sistem untuk operasinya tetapi disembunyikan dari pandangan biasa, misalnya, DS_Store atau Thumbs.db, dll.
- Bangun direktori keluaran: Ini sebagian besar adalah direktori / bin, / out, dll.
- Cache ketergantungan: File-file ini mungkin isi dari / node atau / packages modules.
- File Konfigurasi IDE: Ini adalah file konfigurasi yang sebagian besar dibuat atau dikelola oleh perangkat lunak IDE Anda.
- File yang dihasilkan saat runtime: Ada beberapa program yang membuat file saat dijalankan. Jika salah satu kode tersebut dijalankan, beberapa file mungkin dibuat pada saat dijalankan di folder kerja Anda dan Anda mungkin mengabaikannya di Git.
File mana pun yang ingin Anda abaikan dilacak dalam file khusus bernama .gitignore yang sebagian besar diperiksa di root repositori kerja Anda. Menurut dokumentasi resmi GitHub tentang masalah ini, tidak ada perintah gitignore khusus. Sebagai gantinya, Anda harus mengedit file yang ingin Anda abaikan secara manual. File .gitignore berisi pola yang dicocokkan dengan nama file di repositori kerja Anda dan ini digunakan untuk membantu menentukan apakah file tertentu harus diabaikan atau tidak.
Apa yang menyebabkan .gitignore tidak berfungsi?
Fitur .gitignore mungkin bekerja dengan sempurna tetapi Anda mungkin tidak mengonfigurasinya dengan benar. Dalam semua survei kami, kami sampai pada kesimpulan bahwa modul memang berfungsi. Alasan mengapa pembuat kode tidak dapat menggunakan fitur ini sebagian besar karena mereka belum mengonfigurasi file dengan benar atau ada beberapa kondisi yang tidak terpenuhi dalam kode yang mendasarinya.
Berikut adalah beberapa solusi yang mungkin cocok untuk Anda. Setiap solusi mungkin tidak berlaku dalam kasus Anda, jadi pastikan Anda beralih ke solusi berikutnya jika kondisi awal tidak terpenuhi.
Solusi 1: Memeriksa File .gitignore
Kasus menarik muncul di mana kami melihat bahwa file .gitignore dibuat dalam format yang salah. Masalah khusus ini terjadi ketika pengguna membuat file menggunakan aplikasi default Notepad di OS Windows. Ternyata Notepad menulis file dalam Unicode alih-alih format ANSI. Dalam solusi ini, kami akan menyimpan perubahan Notepad dalam format .gitignore yang benar dan melihat apakah ini memperbaiki masalah.
catatan: Anda harus menghapus ekstensi .txt dari file saat Anda membuat file baru menggunakan Notepad.
- Setelah menulis kode atau mengubah dokumen teks baru di Notepad, klik Mengajukan dan pilih Simpan Sebagai.
- Sekarang di depan Pengkodean, Pilih ANSI. Sekarang hapus ekstensi file .txt dan simpan file dengan nama ‘.gitignore'. Pilih direktori yang benar dan simpan.
- Sekarang arahkan ke direktori dan periksa apakah file yang benar dibuat. Sekarang uji lagi dengan Git dan lihat apakah fitur Abaikan berfungsi seperti yang diharapkan.
Pengembang harus menjauhkan diri dari menggunakan Notepad default di Windows. Sebagai gantinya, Anda harus menggunakan notepad 'programmer' yang tepat. Beberapa contoh termasuk Notepad++ dll. Di dalamnya, Anda tidak akan mengalami masalah seperti ini.
catatan: Jika file Anda sudah disimpan dalam format UNICODE, Anda harus menyimpan konten dalam format ANSI dengan benar jika Anda ingin file Anda terdeteksi dengan baik oleh Git.
Solusi 2: Memeriksa File yang Anda coba Abaikan
Kondisi lain di mana .gitignore berfungsi adalah file Anda tidak boleh bagian dari repositori belum. Ini adalah aspek yang sangat penting karena jika ini benar, file tidak akan diabaikan apa adanya Telah ditambahkan ke repositori. Git tidak dapat mengabaikannya meskipun Anda menempatkan nama atau aturannya di file .gitignore. Jadi intinya, Git hanya mengabaikan file tidak terlacak.
Anda harus melihat struktur (repositori) Anda dan memastikan bahwa file yang saat ini Anda coba abaikan tidak ditambahkan ke repositori. Jika ya, Anda harus menghapus file dari repositori dan setelah perubahan terbaru dilakukan, tambahkan namanya ke .gitignore (Anda juga dapat menyalin konten file dan setelah menghapusnya, replika dengan nama yang berbeda) .
Solusi 3: Menambahkan kembali File ke Repositori
Jika Anda sudah menambahkan aturan ke .gitignore tetapi file yang ingin Anda abaikan sudah ditambahkan, kami dapat menambahkan kembali file tersebut. Menambahkan berarti kami akan menghapus semuanya dari indeks Git dan kemudian menambahkan semuanya kembali ke repositori Anda. Saat kami menambahkan file lagi dari awal, akan diingat aturan yang telah Anda tambahkan di .gitignore dan hanya file yang benar yang ditambahkan.
catatan: Anda juga harus mencadangkan kode Anda di tempat lain sebelum melakukan solusi ini. Itu selalu baik untuk memiliki cadangan untuk berjaga-jaga.
- Jalankan perintah berikut. Ini akan menghapus panggung dan menghapus jalur ke file Anda dari indeks git secara rekursif.
git rm -r --cached .
- Setelah ini dijalankan, Anda harus menjalankan perintah berikut. Ini akan menambahkan semua file Anda kembali dan karena .gitignore akan memiliki aturan, hanya file yang benar yang akan diperbarui.
git add.
- Sekarang kami akan mengkomit semua file Anda kembali ke indeks menggunakan kode di bawah ini:
git commit -m ".gitignore sekarang berfungsi"
Sekarang periksa file Anda dan lihat apakah masalahnya teratasi dan Anda dapat menggunakan .gitignore lagi tanpa masalah apa pun.