Jika Anda ingin memindahkan komit ke area pementasan - yang tidak mengikatnya dan memindahkan semua perubahan yang ada di dalamnya ke area pementasan (secara efektif menempatkan cabang di negara bagian yang seharusnya berada sebelum komit) - bagaimana Anda melakukannya? Atau itu sesuatu yang tidak bisa Anda lakukan?
Yang paling dekat yang saya tahu bagaimana melakukannya adalah menyalin semua file yang diubah di komit ke tempat lain, reset cabang ke komit sebelum komit yang Anda coba pindahkan ke area pementasan, pindahkan semua menyalin file kembali ke repositori, dan kemudian menambahkannya ke area pementasan. Ini bekerja, tapi itu bukan solusi yang bagus. Yang ingin saya lakukan hanyalah membatalkan komit dan memindahkan perubahannya ke area pementasan. Bisakah itu dilakukan? Dan jika demikian, bagaimana caranya?
git reset --soft HEAD~1
yang artinya sama tetapi juga berfungsi pada Windows.Cara Sederhana
File yang dikomit ke Staging Area
git reset --soft HEAD^1
Staging to UnStage : (gunakan "git reset HEAD ..." untuk unstage)
git reset HEAD git commands.txt or git reset HEAD *ds.txt
di sini, * -> semua file diakhiri dengan ds.txt ke unstage.
Lihat gambar di bawah ini untuk kejelasan:
sumber