Saya secara selektif melakukan bagian dari file besar dan saya ingin melihat lebih banyak konteks di sekitar setiap bagian. Apakah ini mungkin?
Saya secara selektif melakukan bagian dari file besar dan saya ingin melihat lebih banyak konteks di sekitar setiap bagian. Apakah ini mungkin?
Jawaban:
Jawaban singkatnya: tidak.
git diffmemiliki -U<n>opsi yang memungkinkan Anda menyesuaikan jumlah baris untuk ditampilkan di sekitar perubahan. Misalnya, git diff -U5 ...akan menampilkan 5 baris konteks. Sejauh yang saya tahu, tidak ada opsi seperti itu yang tersedia untuk tampilan diff dalam mode interaktif.
git diff -U<n>digunakan di kedua sisi setiap baris yang diubah. Jadi jika Anda mengubah satu baris, git diff -U5akan menampilkan 11 baris (dengan asumsi satu baris tidak ada di awal akhir file.)
git diffbukan untuk git add --patchataugit add --interactive
Untuk mengonfirmasi, hal tersebut masih belum memungkinkan di tahun 2019.
Alat eksternal seperti jjlee/git-meld-indexdapat membantu:
git-meld-indexrunningmeld- atau git difftool (kdiff3,,diffusedll.) - untuk memungkinkan Anda melakukan perubahan tahap secara interaktif pada indeks git (juga dikenal sebagai git staging area).
Ini mirip dengan fungsionalitas git add -p, dan git add --interactive.
Dalam beberapa kasus, gabungan lebih mudah / lebih cepat digunakan daripada
git add -patau fitur pementasan di alat sepertigit gui.
Itu karena meld memungkinkan Anda, misalnya, untuk:
- lihat lebih banyak konteks ,
- lihat perbedaan intra-baris
- edit dengan tangan dan lihat pembaruan diff 'langsung' (diperbarui setelah setiap penekanan tombol)
- navigasi ke perubahan tanpa mengatakan '
n' untuk setiap perubahan yang ingin Anda lewati
-U<infinity>opsi untuk menampilkan seluruh file? (Atau apakah sejumlah besar "cukup baik"?)