Saya baru saja memutakhirkan ke magit 2.1.0. (Dan juga untuk emacs 25.0.50 dan git 2.3.1.)
Sebelumnya, di *magit*
buffer saya bisa:
- Pilih bingkah di area Unstaged.
- Ketik vdan jawab ya untuk membalikkannya.
Ini berguna.
Tapi sekarang di Magit 2.1.0 memberikan kesalahan: "Cannot reverse unstaged changes"
.
Mengapa?
Mengambil petunjuk dari pesan kesalahan, saya menemukan saya masih bisa melakukan ini, meskipun agak "mundur" dengan lebih banyak langkah:
- ssembunyikan bingkah itu. (Terasa mundur; bergerak lebih dekat ke keadaan berkomitmen.)
- Nav ke bawah dan pilih di area Tahapan.
- Tekan v, jawab ya.
- Namun cowok itu masih dipentaskan, jadi akhirnya aku harus unstage cowok itu.
Apakah ini bug, atau, apakah disengaja dan / atau saya padat? Jika yang terakhir, dapatkah Anda membantu saya memahami?
UPDATE: Setelah sepenuhnya melakukan RTFinfo, saya melihat bahwa ada dua perintah:
- v
magit-reverse
Balikkan perubahan pada titik di pohon kerja. - k
magit-discard
Hapus perubahan pada titik dari pohon kerja.
Tampaknya k magit-discard
melakukan apa yang biasa saya vlakukan sebelumnya. Itu bekerja pada cowok yang tidak dipentaskan.
Jadi praktis saya hanya perlu melatih memori otot saya untuk digunakan k. Saya bisa mempostingnya sebagai jawaban sendiri. Tapi kurasa aku masih penasaran dengan alasannya, karena aku membayangkan memahaminya akan membantuku memahami keseluruhan lebih baik.
k
membuang perubahan yang tidak dikomit di versi sebelumnya juga, dan tampaknya perintah yang sesuai untuk apa yang Anda lakukan. v
adalah untuk git revert: membuat komit baru yang membuat perubahan berlawanan dari yang sebelumnya. Saya kira mengembalikan suatu perubahan yang belum benar-benar dilakukan sama dengan membuangnya, tetapi 'kembalikan' memiliki arti khusus sebagai perintah git.
v
terikat magit-revert-item
(terminologi "terbalik" berasal dari sana, @PythonNut) dan untuk item yang tidak dipentaskan, ini digunakan untuk melakukan magit-discard-item
(sebagaimana terikat juga k
) - lihat baris 4872 di sini . Tampaknya saya secara tidak sengaja mempelajari makna khusus dari v
, yang berhasil, ketika saya seharusnya belajar menggunakannya k
.