Sto impegnando in modo selettivo parti di un file di grandi dimensioni e mi piacerebbe vedere più contesto attorno a ogni pezzo. È possibile?
Sto impegnando in modo selettivo parti di un file di grandi dimensioni e mi piacerebbe vedere più contesto attorno a ogni pezzo. È possibile?
Risposte:
Risposta breve: no.
git diff
ha l' -U<n>
opzione che ti permette di personalizzare il numero di righe da mostrare intorno a una modifica. Ad esempio, git diff -U5 ...
mostrerà 5 righe di contesto. Per quanto ne so, non esiste tale opzione disponibile per la visualizzazione delle differenze nella modalità interattiva.
git diff -U<n>
viene utilizzato su entrambi i lati di ogni riga modificata. Quindi, se hai una riga modificata, git diff -U5
ti mostrerà 11 righe (supponendo che una riga non sia all'inizio della fine del file).
git diff
non per git add --patch
ogit add --interactive
A conferma, questo non è ancora possibile nel 2019.
Uno strumento esterno come jjlee/git-meld-index
può aiutare:
git-meld-index
corremeld
- o qualsiasi altro difftool git (kdiff3
,diffuse
, etc.) - per permettere che i cambiamenti di scena in modo interattivo per l'indice git (noto anche come area di sosta git).
Questo è simile alla funzionalità di git add -p
, e git add --interactive
.
In alcuni casi la fusione è più facile / veloce da usare rispetto
git add -p
ao la funzionalità di staging in strumenti comegit gui
.
Questo perché la combinazione ti consente, ad esempio, di:
- vedere più contesto ,
- vedere diff intra-line
- modifica a mano e guarda gli aggiornamenti diff 'live' (aggiornati dopo ogni pressione di un tasto)
- vai a una modifica senza dire "
n
" a ogni modifica che desideri saltare
-U<infinity>
un'opzione per mostrare l'intero file? (O un numero elevato è "abbastanza buono"?)