Как выполнить слияние, если одновременно изменяется несохраненный файл?

Как выполнить слияние, если одновременно изменяется несохраненный файл?

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

Есть ли способ объединить оба изменения?

решение1

Это не так-то просто. Лучшее, что я могу придумать, — всегда использовать команду :DiffOrigи объединять изменения перед записью.

решение2

Команда :DiffOrig, упомянутая в другом ответе, предназначена именно для этого, но у вас есть еще несколько вариантов:

  1. Сохраните файл под другим именем, используя :saveas new_name. Затем вы сможете различать/объединять два файла без каких-либо трудностей или риска потери данных.

  2. Сделайте то же самое :DiffOrig, но вручную. Создайте новый буфер и считайте файл с диска с помощью команды :r. Сравните два буфера или сделайте что-нибудь еще, чтобы убедиться, что вы сохранили важные изменения.

Связанный контент