Я бы высоко рекомендовал бы какую-либо форму контроля версий, например git или mercurial . Это даст вам историю файлов, которую вы хотите (бонус: ветвление), а также обеспечит простой способ клонировать и делиться историей между различными репозиториями.
Гит
Вы можете использовать плагин, такой как vim-futitive , для обработки постановки, фиксации и многих других функций git. Vimcasts предоставляет несколько хороших обучающих программ по скринкасту для беглецов:
Постоянное Отмена
Для обеспечения контроля версий Vim также предоставляет постоянную отмену, где он сохраняет историю отмен Vim в файл. См :h persistent-undo
.
Просто установите 'undofile'
в вашем vimrc
:
set undofile
Может потребоваться установить 'undodir'
в другом месте, например, set undodir=~/.local/vim/undo
. Примечание: 'undodir'
должно существовать.
Следует отметить, что постоянная отмена не контроля версий и не должна рассматриваться как таковая. Например, историю отмен можно легко испортить, отредактировав файл в другом редакторе.
Плагины, такие как Gundo и undotree , могут помочь в глубокой навигации в прошлом или в сложных историях отмены.