инструмент консольного интерфейса для разрешения конфликтов слияния в git ... как vimdiff, но "проще" - PullRequest
4 голосов
/ 29 ноября 2009

Я ищу инструмент консольного интерфейса для разрешения конфликтов слияния в git ... как vimdiff, но "проще"

Ответы [ 3 ]

1 голос
/ 29 марта 2019

Я остался с vimdiff, но я обычно оставляю видимым только файл, который нужно открыть (запускаю :only, когда в этом окне), а затем я отключаю цвета diff (которые чаще всего болят глаза) с помощью :diffoff.

Наконец, у меня есть следующее отображение, которое помогает мне просматривать маркеры конфликта:

nnoremap <space>n /^\(<<<<\\|====\\|>>>>\)<CR>

В обычном режиме нажмите <space>n, и он будет искать маркеры, затем используйте n для перехода от маркера к маркеру.

С этого момента я редактирую свои конфликты, пока не стану счастливым.

0 голосов
/ 12 июля 2011

Плагин threesome.vim vim обеспечивает более удобный инструмент слияния, чем vanilla vimdiff.

Что касается комментария о том, какие файлы будут изменены, когда вы git pull: git diff --stat HEAD..origin/$(git rev-parse --abbrev-ref HEAD) после git fetch скажут вам об этом. (Замените --name-only на --stat, если вам действительно нужны имена и ничего больше. Или вообще не указывайте --stat, чтобы увидеть фактические входящие различия). Возможно, вы захотите добавить псевдоним для этого в свой глобальный файл конфигурации.

0 голосов
/ 29 ноября 2009

Это не совсем то, что вы ищете, но git stash очень полезно для разрешения слияний. Просто сделай:

git stash create
git pull
git stash pop <stashnum>

Где <stashnum> - это вывод git stash create

...