Bagaimana saya bisa membatalkan setiap perubahan yang dilakukan pada direktori saya setelah komit terakhir, termasuk menghapus file yang ditambahkan, mengatur ulang file yang dimodifikasi, dan menambahkan kembali file yang dihapus?
git
git-commit
git-reset
git-revert
Dogbert
sumber
sumber
Jawaban:
Atur ulang perubahan terlebih dahulu
lalu bersihkan semua yang tidak terlacak. Jika Anda ingin menyimpan file yang tidak dapat dilacak
.gitignore
, berhati-hatilah dengan perintah ini.sumber
-x
opsi itugit clean
juga, yang mengarahkannya untuk menghapus file yang diabaikan juga.git clean -fd
perintah.git clean -fd
tidak akan menghapus file yang diabaikan.-x
akan.git clean -fd
akan menghapus folder itu dan file yang tidak terlacak. Diuji dengan git versi 1.9.1Anda dapat membatalkan perubahan pada file yang dilacak dengan:
Anda dapat menghapus file yang tidak dilacak dengan:
Anda dapat menghapus file dan direktori yang tidak dilacak dengan:
tetapi Anda tidak dapat membatalkan perubahan ke file yang tidak dilacak .
Anda dapat menghapus file dan direktori yang diabaikan dan tidak terlacak
tetapi Anda tidak dapat membatalkan perubahan ke file yang diabaikan .
Anda juga dapat mengatur
clean.requireForce
kefalse
:untuk menghindari penggunaan
-f
(--force
) saat Anda menggunakangit clean
.sumber
Ada dua perintah yang akan berfungsi dalam situasi ini,
root> git reset --hard HEAD ~ 1
root> git push -f
Untuk lebih banyak perintah git lihat halaman ini
sumber
git push -f
tidak terkait dengan pertanyaan dan, dalam skenario ini, berbahaya