Git filter branch

Fungsi git filter-branch 

Cara menggunakannya adalah sebagai berikut

 git filter-branch --force --index-filter \

  'git rm --cached --ignore-unmatch lokasi/ke/file.exe' \

  --prune-empty --tag-name-filter cat -- --all


Jika sudah dijalankan maka akan muncul gambar seperti di atas

file.exe adalah file yang ingin di hapus dari semua history github repo yang telah disimpan, cara ini dapat menghemat banyak sekali space pada local repo sehingga ukuran repo tidak membengkak.

setelah proses selesai maka eksekusi command di bawah ini

git push origin --force --all
Git Push Force

jika git menemukan file lain yang ukurannya besar maka akan diberikan peringatan tetang file tersebut
Git Bash Info

lanjutkan dengan script dibawah ini untuk melakukan garbage collector
git gc --aggressive --prune
Git gc agressive prune

Jika sudah selesai maka silahkan cek kembali ukuran local repository anda.

Anda juga bisa menambahkan file di .gitignore agar file tersebut tidak masuk ke dalam repo. 

Read: