Посмотреть историю файла в Magit?


просмотр истории изменений файла с помощью Git versioning рассказывает о других способах просмотра истории файла в Git.

можно ли это сделать в Emacs Magit?

5   51   2013-01-16 11:01:35

5 ответов:

начиная с magit 2.1:magit-log-buffer-file (согласно комментарию ниже)

перед magit 2.1:magit-file-log это то, что вы ищете. Он покажет вам все фиксации для файла в текущем буфере в стандартном представлении журнала magit.

открыть magit-status буфер, введя M-x magit-status (раньше я привязывал это к C-. C-g, потому что он используется все время. В эти дни я использую Spacemacs, так что это M-m g s)

  1. тип l чтобы получить возможность просмотра журнала
  2. тип =f чтобы установить параметр "ограничить файлы"
  3. введите путь к файлу который вы хотите просмотреть историю для
  4. тип l для просмотра журнала текущей ветви

если вы используете Spacemacs, вы можете получить историю в настоящее время посетил файла, используя <SPC> g f h

в своем *magit: <project>* буфера использовать l, чтобы перейти в режим регистрации, затем нажмите f для запроса имени файла.

Если Магит (руководство пользователя) не имеет этой функции, то вы можете посмотреть на другие режим Emacs, и добавлять свои собственные git-log-file функция:

(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)))

Я не знаю, как. Я просто использую M-x vc-print-log который, кажется, выполняет тот же подвиг. Однако это не Магит-интегрированный способ.