С помощью двух флагов -j ревизия, команды update и checkout могут сливать изменения между любыми двумя ревизиями в ваш рабочий файл.
Команда
$ cvs update -j 1.5 -j 1.3 backend.c
отменит изменения, сделанные между ревизиями 1.3 и 1.5. Обратите внимание на порядок указания ревизий!
Если вы попробуете использовать эту опцию при работе с несколькими файлами, помните, что номера ревизий, вероятно, будут сильно отличаться для разных файлов. В таких случаях почти всегда следует использовать символьные метки, а не номера ревизий.
Указав два ключа командной строки -j, можно также отменить удаление или добавление файла. Например, предположим, у вас есть файл file1, существовавший в ревизии 1.1. Затем вы удалили его, создав “мертвую” ревизию 1.2. Теперь предположим, что вы хотите добавить его опять, с тем же самым содержимым, что он имел ранее. Вот как сделать это:
$ cvs update -j 1.2 -j 1.1 file1 U file1 $ cvs commit -m test Checking in file1; /tmp/cvs-sanity/cvsroot/first-dir/file1,v <-- file1 new revision: 1.3; previous revision: 1.2 done $