# Cara Menghapus History Commit Tertentu
Table of Contents
Pernahkah kamu cosplay menjadi orang bdh dan ntah secara sengaja atau secara tidak sengaja mengupload file .env ke repo publik? kondisi tll ini sering sekali terjadi, biasanya karena lupa mengatur .gitignore dan mengecualikan file .env production
Pada artikel ini, saya akan membahas cara menghapus history commit tertentu di Git.
Jika kamu ingin menghapus file .env dari semua commit di repository Git kamu, kamu bisa menggunakan git filter-branch atau git filter-repo. Tetapi, git filter-branch sekarang sudah dianggap deprecated dan digantikan oleh git filter-repo.
Contoh penggunaan git filter-repo
git filter-repo adalah alat yang lebih cepat dan lebih fleksibel daripada git filter-branch. Kamu bisa menginstalnya melalui Python package manager (pip).
1. Instal git filter-repo
Jika kamu belum menginstalnya, jalankan:
pip install git-filter-repo2. Jalankan perintah berikut untuk menghapus .env dari riwayat commit
git filter-repo --invert-paths --path .envIni akan menghapus semua file .env dari seluruh riwayat commit dan menggantikan git filter-branch dengan cara yang lebih efisien.
3. Perbarui remote repository
Setelah itu, lakukan push ke remote repository menggunakan --force:
git push --force --allgit push --force --tagsMenambahkan .env ke .gitignore
Setelah menghapus .env dari riwayat commit, pastikan untuk menambahkannya ke file .gitignore agar tidak dimasukkan kembali ke dalam commit di masa depan.
-
Tambahkan
.envke file.gitignore:Terminal window echo ".env" >> .gitignore -
Lalu commit perubahan tersebut:
Terminal window git add .gitignoregit commit -m "Add .env to .gitignore"git push
Dengan langkah-langkah ini, kamu akan berhasil menghapus file .env dari riwayat commit dan mencegahnya agar tidak muncul di commit selanjutnya.