Pernah tidak ketika kamu selesai mengerjakan coding dan juga telah melakukan push, kemudian kamu tersadar bahwa apa yang telah kamu push ternyata salah ? Yap, itulah yang saya alami pagi ini dan saya harus memperbaiki kesalahan saya tersebut. Bagaimanakah cara saya bisa membatalkan commit yang sudah terlanjur saya push ? Simak paparannya berikut ini !
Cara Mudah Membatalkan Commit Terakhir yang Terlanjur di Push
Jadi setelah saya mencari di Google, ada banyak sekali cara yang disarankan oleh orang-orang. Dari sekian cara tersebut saya memilih satu yang sepertinya terlihat mudah dan sederhana. Kira-kira seperti ini langkah-langkahnya :
Pertama silakan revert terlebih dahulu repositori lokal yang ada di mesin kamu dengan menggunakan perintah berikut ini :
$ git reset --hard <commit-id>
Silakan ganti <commit-id>
sesuai dengan yang anda inginkan. Nanti dia akan muncul output semacam ini misalnya :
$ git reset --hard 2f6d8152
HEAD is now at 2f6d815 [10.0] [NEW] Initial Commit
Setelah menjalankan perintah di atas, kemudian lanjutkan dengan menjalankan perintah ini :
$ git clean -f -d
kemudian apabila kamu cek status repository kamu sekarang dengan menggunakan perintah di bawah ini :
$ git status
Maka akan muncul informasi yang menandakan bahwa branch lokal kamu sekarang tertinggal bila dibandingkan dengan branch yang sudah dipush di remote repository.
$ git status
On branch 10.0
Your branch is behind 'origin/10.0' by 1 commit, and can be fast-forwarded.
(use "git pull" to update your local branch)
nothing to commit, working directory clean
Tenang ! Kamu hanya perlu menjalankan perintah berikut ini :
$ git fetch --all
$ git fetch --all
Fetching origin
dan langkah terakhir adalah push perubahan kamu di lokal tadi. Namun cara push-nya sedikit berbeda, kamu harus memaksa agar remote repository menerima push kamu dengan cara menambahkan tanda + (plus) sebelum nama branch kamu. Lihat contohnya di bawah ini :
$ git push -u origin +<branch-name>
Pastikan kamu mengganti <branch-name>
dengan nama branch yang kamu inginkan !
$ git push -u origin +10.0
Total 0 (delta 0), reused 0 (delta 0)
To git@git.tutorlokal.com:modules/some_repos.git
+ 80352be...2f6d815 10.0 -> 10.0 (forced update)
Branch 10.0 set up to track remote branch 10.0 from origin.
Kesimpulan
Nah, kesimpulannya adalah apabila kamu salah melakukan push dan ingin menghapus commit yang terlanjur ada di remote repository, maka tidak perlu lagi kamu ambil pusing. Cukup dengan menjalankan beberapa perintah sederhana di atas, dan masalah terselesaikan. Selamat mencoba, semoga berhasil !
terima kasih mas bro semoga ilmunya semakin berguna buat banyak orang khususnya yang mendapatkan masalah seperti ini
Sama-sama, senang bisa membantu. Dapatkan update artikel terbaru dari TutorLokal dengan cara subscribe channel TutorLokal di Telegram: https://t.me/tutorlokal
makasih mas…
sangat membantu…
Terima kasih banyak
mantap bang
terimkasih