Dalam git, jika saya memiliki beberapa hunks dari file yang sama yang dipentaskan di indeks saya, bagaimana saya bisa secara interaktif menghapus salah satunya?
Apakah ada alternatif untuk menghapus seluruh file, dan kemudian melakukan pementasan ulang hunks yang ingin saya pertahankan, atau secara manual membatalkan perubahan pada copy pekerjaan, dan kemudian secara interaktif menambahkan perubahan yang dibatalkan itu?
git stash save --keep-index
untuk menyimpan dan mengatur ulang perubahan copy pekerjaan Anda saat ini. Kemudian, Anda dapat mengatur ulang file Anda dan membatalkan perubahan yang tidak Anda inginkan. Jika Anda menyalin file ke beberapa lokasi sementara terlebih dahulu, Anda dapat menggunakandiff
untuk menyimpan perubahan yang Anda batalkan. Kemudian, Anda dapat menambahkan file kembali (tidak perlu menambahkan interaktif karena Anda telah menyembunyikan perubahan lain yang tidak Anda minati). Gunakangit stash pop
untuk mendapatkan kembali perubahan lama, dandiff
untuk menerapkan perubahan yang Anda batalkan. Cukup merepotkan ... :-(The short form -p also works for both commands.
.. Maksudmugit reset -p filename
?git add -p filename
secaragit reset -p filename
selektif menetapkan perubahan dari file itu, dan secara selektif menghapus perubahan. Ada jugagit checkout -p -- filename
, yang memungkinkan Anda membuang perubahan dari file secara selektif. Peringatan: masing-masing dariadd
danreset
dapat digunakan untuk mengurungkan yang lain dari keduanya, tetapi jika Anda menggunakan bentuk inicheckout
untuk membuang perubahan, Anda tidak dapat mendapatkannya kembali.git gui
memiliki GUI yang layak untuk mementaskan atau menghapus pentas bongkahan atau garis secara interaktif. Ada klien GUI yang lebih cantik / lebih baik, tetapigit gui
ringan, built-in, dan lintas platform (lin, win, mac).https://git-scm.com/docs/git-gui
Cukup klik kanan pada bingkah ke panggung / unstage. Untuk garis, sorot garisnya terlebih dahulu, lalu klik kanan.
sumber
GitX memiliki UI yang bagus untuk menghapus potongan-potongan file:
Klien resmi sudah lama tidak dikelola, tetapi cabang di GitHub dengan lebih banyak fitur populer di beberapa kalangan. ( posting blog tentang itu )
sumber
git gui