Просмотр изменений в контексте с помощью magit - PullRequest
0 голосов
/ 17 марта 2020

Рассмотрим magit сеанс, запущенный только с двумя рекомендованными настройками привязки клавиш.

(global-set-key (kbd "C-x g") 'magit-status)
(global-set-key (kbd "C-x M-g") 'magit-dispatch)

Теперь предположим, что в этом сеансе я просто просматриваю репозиторий без изменения / последовательность этапов / коммитов. Теперь я достигаю file.c

// a: This line existed in commit A.
// a: This line existed in commit A.
// b: This is a new line added in commit B.
// b: This is a new line added in commit B.

Чтобы понять, что было сделано при каждом коммите, я go - git checkout постепенно.

Когда на коммите B, я в контексте хотелось бы видеть, что две строки (b выше) вставляются заново, возможно, с помощью выделенного фона или индикатора поля.

Возможно ли изменение контекста с помощью magit или git diff лучшее, что можно сделать?

Без magit diff-hl-flydiff уже можно показать, чем текущий файл отличается от репо. Я здесь спрашиваю, возможен ли просмотр изменений во время серии git checkout, с diff-hl-flydiff, если он может хорошо сосуществовать с magit, или без, если это встроено в magit.

1 Ответ

2 голосов
/ 17 марта 2020

Нет необходимости git checkout что-либо.

Я предлагаю использовать e для вызова magit-ediff-dwim для коммита, который вас интересует (или E c для вызова magit-ediff-show-commit). Если фиксация включает более одного файла, вам будет предложено (с завершением), чтобы файл для сравнения. Затем он перейдет в ediff, где вы можете просмотреть изменения для этого изменения diff в контексте.

Если вы просматриваете журнал только для одного файла, используя C - c Mg l (или Mx magit-log-buffer-file), тогда Ma git примет, что вы хотите отредактировать этот же файл, и не предложит вам.

Чтобы узнать, как использовать ediff: C -h i г (ediff)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...