Что такое формат файла RCS?
Файл .rcs представляет собой текстовый архив системы контроля версий, созданный Revision Control System - одним из старейших инструментов управления исходным кодом, который до сих пор активно используется. Он хранит полную историю изменений одного контролируемого файла (обычно модуля исходного кода), позволяя восстановить любую предыдущую версию по запросу.
Архив разделен на три секции: административный заголовок, объявляющий структуру ветвей, списки доступа и символические теги; дерево дельт с одним узлом на каждую ревизию, где записываются дата, автор, лог-сообщение и указатели ветвления; и секция текста дельт, хранящая последнюю версию целиком, а все более ранние версии - в виде компактных обратных диффов. Изменения между версиями представлены с использованием того же строчно-ориентированного формата diff, знакомого по инструментам Unix. Весь файл представляет собой 7-битный текст ASCII, читаемый в любом редакторе.
Традиционно архив RCS хранится с суффиксом ,v внутри подкаталога RCS/ - например, main.c,v - хотя расширение .rcs также используется в некоторых реализациях. RCS также поддерживает подстановку ключевых слов, автоматически развертывая теги $Id$, $Author$, $Date$ и $Revision$ в извлеченных файлах исходного кода.
RCS была создана в 1982 году Уолтером Ф. Тичи в Университете Пердью и позже включена в проект GNU. Она стандартизирована в POSIX.2 (IEEE 1003.2). Хотя Git, Subversion и CVS вытеснили её в большинстве проектов, выпуск GNU RCS 5.10.1 (2023 год) подтверждает продолжение активной поддержки. RCS по-прежнему используется в устаревших кодовых базах и конвейерах сборки встроенных систем, где достаточно легковесного журнала изменений для каждого отдельного файла.
Безопасность и защита
РИСК: LOWАрхив RCS представляет собой обычный текст ASCII, который можно прочитать в любом редакторе - он не содержит исполняемого контента. Открытие такого файла полностью безопасно. Единственное предостережение при работе заключается в том, что поврежденные файлы RCS могут запутать инструменты co/ci; всегда делайте резервные копии архивов RCS на уровне файловой системы. Обратите внимание, что расширение .rcs также используется совершенно не связанными форматами сохранений Ren'Py и сцен Fryrender - подтвердите источник перед выбором инструмента.
Детали формата
в двух словах- Файл сохранения Ren'Py RCS - Движок визуальных новелл Ren'Py использует .rcs в качестве расширения файла сохранения игры - это несвязанный бинарный формат.
- Файл сцены Fryrender / RandomControl - Программа Fryrender (3D-визуализация) от RandomControl исторически использовала .rcs для данных сцен - это несвязанный бинарный формат.
Программы, открывающие файлы RCS
Технические подробности
глубокая спецификация| Кодировка | Простой текст, 7-bit ASCII |
| Типичный размер архива | Примерно в 1-10 раз больше размера контролируемого файла (зависит от количества версий и объема дельт) |
| Структура архива | Три раздела - заголовок admin, дерево дельт (один узел на версию), блоки текста дельт |
| Метод дельты | Обратные диффы - последняя версия хранится полностью; более ранние версии - как команды добавления/удаления строк |
| Токен первой строки | Ключевое слово `head`, за которым следует номер последней версии (например, `head 1.5;`) |
| Традиционное имя файла | Имя контролируемого файла + суффикс «,v» в подкаталоге RCS/ (например, foo.c,v) |
| Подстановка ключевых слов | $Id$, $Author$, $Date$, $Revision$, $Log$ - режим управляется ключевым словом `expand` в разделе admin |
| Стандарт | POSIX.2 (IEEE 1003.2); формат определен в man-странице rcsfile(5) |
| Целостность | Встроенная отсутствует; полагается на права доступа файловой системы |
| Операционные системы | Linux, macOS, Unix/BSD; Windows через MSYS2, Cygwin или WSL |
| Выпущен | 1982 (original RCS by Walter F. Tichy, Purdue University); GNU RCS 5.x actively maintained |
| Последняя версия | GNU RCS 5.10.1 (released 2023) |
| Открыть стандартное | Да · без роялти |
| Спецификация | www.gnu.org |
Конвертации RCS
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах RCS.