Veja o histórico de alterações de um arquivo usando o controle de versão do Git sobre outras formas de visualizar o histórico de um arquivo no Git.
Isso pode ser feito no Emacs Magit?
Veja o histórico de alterações de um arquivo usando o controle de versão do Git sobre outras formas de visualizar o histórico de um arquivo no Git.
Isso pode ser feito no Emacs Magit?
Respostas:
Desde magit 2.1: magit-log-buffer-file
(conforme comentário abaixo)
Antes do magit 2.1: magit-file-log
é o que você está procurando. Ele irá mostrar a você todos os commits para o arquivo no buffer atual na visualização do log magit padrão.
magit-file-log
foi renomeado paramagit-log-buffer-file
magit-log-buffer-file
não restringe a exibição de cada commit apenas para aquele arquivo.
magit-log-buffer-file
e então executar magit-ediff-dwim
(vinculado ao atalho "e" no Spacemacs) no commit de sua escolha. Isso mostrará uma janela com dois painéis com alterações destacadas.
l
, -u
e l
vai ajudar depoismagit-log-buffer-file
Abra seu magit-status
buffer, digitando M-x magit-status
(eu costumava ter esse limite C-. C-g
porque é usado o tempo todo. Hoje em dia, eu uso o Spacemacs, então é <SPC> g s
)
l
para obter a opção de visualização do registro--
para definir a opção "Limitar a arquivos" (costumava ser =f
)l
para ver o log da filial atualSe estiver usando o Spacemacs, você pode obter o histórico do arquivo atualmente visitado usando <SPC> g f h
--
( Magit 20200112.2023, Git 2.20.1, Emacs 26.1, gnu/linux
)
Em seu *magit: <project>*
buffer, use l
para entrar no modo de registro e pressione f
para ser solicitado um nome de arquivo.
Se o magit ( manual do usuário ) não tiver esse recurso, você pode dar uma olhada em outro modo Emacs e adicionar sua própria git-log-file
função:
(defun git-log-file ()
"Display a log of changes to the marked file(s)."
(interactive)
(let* ((files (git-marked-files))
(buffer (apply #'git-run-command-buffer "*git-log*" "git-rev-list" \
"--pretty" "HEAD" "--" (git-get-filenames files)))) (with-current-buffer buffer
; (git-log-mode) FIXME: implement log mode
(goto-char (point-min))
(setq buffer-read-only t))
(display-buffer buffer)))
C-x v l
Symbol’s function definition is void: git-marked-files