Eu sei que posso usar o git diff
comando para verificar as alterações, mas, tanto quanto eu entendi, é baseado em diretório. Isso significa que ele fornece todas as alterações de todos os arquivos no diretório atual.
Como posso verificar apenas as alterações em um arquivo específico? Digamos, eu alterei os arquivos file_1.rb
, file_2.rb
... file_N.rb
, mas estou interessado apenas nas alterações no arquivo file_2.rb
. Como verifico essas alterações (antes de confirmar)?
Respostas:
Use um comando como:
Consulte a
git diff
documentação para obter informações completas sobre os tipos de coisas pelas quais você pode obter diferenças.Normalmente,
git diff
por si só mostra todas as alterações em todo o repositório (não apenas no diretório atual).fonte
Outro método (mencionado nesta resposta do SO ) manterá o histórico no terminal e fornecerá um histórico muito profundo do próprio arquivo:
git log --follow -p -- file
fonte
Você pode usar
gitk [filename]
para ver o log de alteraçõesfonte
Você pode usar o comando abaixo para ver quem mudou o que em um arquivo.
git blame <filename>
fonte
git blame <filename> | grep <searchfor>
onde<searchfor>
está a uma curta valor. Por exemplo, para descobrir o que mudoufoo
parabar
nodist/index.php
, você usariagit blame dist/index.php | grep bar
Você pode executar
Isso mostrará o nome dos arquivos modificados e, ao copiar o caminho do arquivo interessado, você poderá ver as alterações usando
git diff
fonte
para listar apenas confirma detalhes de alterações específicas no arquivo,
para listar a diferença entre várias confirmações para o mesmo arquivo,
para listar apenas commit e sua mensagem,
fonte
você também pode tentar
Para confirmações, o git show mostrará a mensagem de registro e a diferença de texto (entre o seu arquivo e a versão confirmada do arquivo).
Você pode conferir a documentação do git show para mais informações.
fonte
Ou se você preferir usar sua própria ferramenta de GUI:
Você pode definir sua ferramenta gui guiada por este post: Como eu vejo a saída 'git diff' com um programa visual diff?
fonte
Concordo totalmente com @Greg Hewgill
E se o caminho incluir espaços, você pode usar, tente adicionar com apóstrofo
'
ou `git diff 'MyProject / Minha pasta / Minha subpasta / file_2.rb'
fonte