Terkadang dalam melakukan versioning respository teman-teman tidak atau lupa memperhatikan pesan feedback dari github kalau hasil push project yang teman-teman kirimkan itu gagal terkirim atau yang berhasil terubah hanya dilocal repository karena ada beberapa file yang berukuran melebihi kapasitas pengiriman file, sedangkan ukuran file yang diterima itu hanya 100mb saja hingga terjadi error atau misalkan ada beberapa file yang seharusnya tidak terkirim dan lupa di setting didalam file ".gitignore" dan sudah terjadi commit berulang-ulang. Untuk bisa menangani masalah tersebut butuh waktu lama untuk orang yang awam atau baru saja belajar menggunakan git. Jadi mari kita kupas tuntas masalah ini.
- Pertama, teman-teman buat dulu repository di github untuk latihan. Bisa melalui link berikut : https://github.com/new.
- Lalu, clone dan buka project di code editor yang teman-teman baru saja buat. saat ini saya menggunakan Phpstorm untuk membuka project.
- Sekarang teman-teman buat bebera file dan salah satu file tersebut dengan ukuran file diatas 100mb. seperti gambar dibawah ini :

Kalau diperhatikan gambar diatas ada beberapa poin A dan B yang berarti poin A adalah daftar file yang ada pada projek yang telah dibuat sedangkan untuk poin B adalah Git LOG untuk memantau aktivitas yang kita lakukan pada repository kita.
selanjutnya, kita buat ilustrasi error yang telah dijelaskan pada paragraf pembuka diatas. Teman-teman masukan file yang telah dibuat kedalam stage dengan cara mengetikkan pada git terminal:
git add .
jika berhasil, maka ketikan lagi perintah
git status
untuk melihat file apa saja yang telah dimasukan kedalam stage. kalau teman-teman perhatikan file yang ukuran besar akan masuk ke stage seperti gambar dibawah ini.

Selanjutkan, kita ketikan perintah commit pertama kita.
git commit -m "#0000 : Daftarkan semua file"
Jika berhasil, aktivitas commit yang telah kita lakukan akan terekam pada git log, seperti gambar dibawah ini:

Kita Akan melakukan perubahan dengan file "latihan_1.php". menjadi seperti ini. lakukan masukan file perubahan yang tadi teman-teman ubah kedalam stage dengan mengetikkan
git add .
lalu untuk mengeceknya, ketikkan perintah berikut:
git status
kemudian commit perubahan yang teman-teman ubah tadi.
git commit -m "#0001 : Perubahan latihan_1.php"
seperti gambar dibawah ini:

- Lakukan, hal yang sama(tahap 6) pada file "latihan_2.php". hasil tahap ini seperti gambar dibawah ini:

- Ok, Semua skenario error telah kita buat. jika diperhatikan pada gambar dibawah ini:

Terlihat file "Big size.rar" itu terdaftar pada commit "#0000" dan ada dua commit telah masuk setelahnya. jika kita menjalankan perintah dibawah ini maka akan muncul error pada file "Big size.rar" :
git push origin main
Pesan error bisa dilihat pada gambar dibawah ini:

Perlu diketahui bahwa setiap commit yang teman-teman kirimkan ada ada berberapa informasi seperti key, tanggal commit, posisi HEAD yang bisa teman-teman bisa gunakan untuk menghapus/mengubah commit yang teman-teman inginkan. Dengan mengetikkan perintah
git log
akan menampilkan tentang commit yang telah dilakukan seperti gambar dibawah ini:

Cari pesan commit dimana file "Big Size.rar" terdaftar didalam stage. Lalu, cari tau berapa tingkat dari commit tempat file "Big size.rar" dari HEAD. kemudian ketik
git reset <key-hash> --soft
arti dari command git diatas menghapus 3 commit dari Head berada tampa menghapus perubahan terakhir seperti gambar dibawah ini:

Setelah berhasil menjalankan command diatas maka commit yg sebelumnya ada terhapus sampai head yang dituju. seperi gambar dibawah ini :

kemudian hapus file "big file.rar" dengan perintah command seperti ini
del "big file.rar"
- Setelah file sudah terhapus teman-teman bisa add file dan commit repository seperti pada tahap 6.
- Perintah terakhir untuk push project ke repo bisa dilakukan dengan perintah
git push origin main
Sekian artikel ini. Mohon maaf jika ada kekurangan pada tulisan ini. Terimah kasih
By:@pencil_macet