Git: tampilkan lebih banyak konteks saat menggunakan git add -i atau git add -e?

101

Saya secara selektif melakukan bagian dari file besar dan saya ingin melihat lebih banyak konteks di sekitar setiap bagian. Apakah ini mungkin?

Shawn J. Goff
sumber

Jawaban:

130

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.

hammar
sumber
7
Apakah ada -U<infinity>opsi untuk menampilkan seluruh file? (Atau apakah sejumlah besar "cukup baik"?)
titaniumdecoy
2
Saya ingin menyebutkan bahwa angka in 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.)
ArtOfWarfare
5
Ini untuk git diffbukan untuk git add --patchataugit add --interactive
0xcaff
1
@titaniumdecoy, saya mempostingnya sebagai pertanyaan terpisah stackoverflow.com/questions/28727424/…
Aleksandr Levchuk
3
Masih belum ada solusi?
Vitaly Zdanevich
2

Untuk mengonfirmasi, hal tersebut masih belum memungkinkan di tahun 2019.

Alat eksternal seperti jjlee/git-meld-indexdapat membantu:

git-meld-indexrunning meld- 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 seperti git 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
VonC
sumber