Estou comprometendo seletivamente partes de um arquivo grande e gostaria de ver mais contexto em torno de cada pedaço. Isso é possível?
Estou comprometendo seletivamente partes de um arquivo grande e gostaria de ver mais contexto em torno de cada pedaço. Isso é possível?
Respostas:
Resposta curta: não.
git difftem a -U<n>opção que permite personalizar o número de linhas a serem exibidas em torno de uma mudança. Por exemplo, git diff -U5 ...mostrará 5 linhas de contexto. Pelo que eu posso dizer, essa opção não está disponível para a exibição de diferenças no modo interativo.
git diff -U<n>é usado em ambos os lados de cada linha alterada. Então, se você tiver uma linha alterada, git diff -U5irá mostrar 11 linhas (assumindo que uma linha não esteja no início do final do arquivo.)
git diffnão git add --patchougit add --interactive
Para confirmar, isso ainda não é possível em 2019.
Uma ferramenta externa como jjlee/git-meld-indexpode ajudar:
git-meld-indexcorridasmeld- ou qualquer outro difftool git (kdiff3,diffuse, etc.) - para permitir a mudanças de estágio de forma interativa para o índice git (também conhecida como área de teste do git).
Isso é semelhante à funcionalidade de git add -pe git add --interactive.
Em alguns casos, o meld é mais fácil / rápido de usar do que
git add -po recurso de teste de ferramentas comogit gui.
Isso porque o meld permite que você, por exemplo:
- veja mais contexto ,
- veja diffs intra-line
- edite manualmente e veja as atualizações de diff 'ao vivo' (atualizadas após cada pressionamento de tecla)
- navegue até uma alteração sem dizer '
n' para cada alteração que deseja pular
-U<infinity>opção para mostrar o arquivo inteiro? (Ou um grande número é "bom o suficiente"?)