Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

✅ Дешевый VPS-хостинг на AMD EPYC: 1vCore, 3GB DDR4, 15GB NVMe всего за €3,50!

🔥 Anti-DDoS защита 12 Тбит/с!

VPS в России, Европе и США

Бесплатная поддержка и администрирование

Оплата российскими и международными картами

🔥 VPS до 5.7 ГГц под любые задачи с AntiDDoS в 7 локациях

💸 Гифткод CITFORUM (250р на баланс) и попробуйте уже сейчас!

🛒 Скидка 15% на первый платеж (в течение 24ч)

RCSFILE(5)
ФОРМАТ ФАЙЛОВ

НАЗВАНИЕ
rcsfile - формат архивного файла в Системе Отслеживания Версий RCS .

ОПИСАНИЕ
Текст, помещенный в архив может иметь свободный формат, но сам архивный файл обязан заканчиваться символом новой строки. Разделители -- символы пробела, забоя, табуляции, новой строки, вертикальной табуляции, смены страницы, и возврата каретки -- имеют особое значение только в специальных строках и не могут появляться внутри следующих элементов: id, num и sym.

Специальные строки ограничены с обеих сторон символами @. Если архивируемая или специальная строка сама содержит @, то этот символ удваивается. Специальная строка может содержать любые символы.

Мета-синтаксис формул, использованный ниже, придерживается следующих соглашений: Символ `|' разделяет два элемента, из которых нужно выбрать один. Символы `{' и `}' ограничивают необязательный элемент. Символы `{' и `}*' ограничивают элемент, который может быть повторен ноль или более раз. Символ `{' and '}+' ограничивают элемент, который должен быть повторен один или более раз.


	rcstext   ::=  admin {delta}* desc {deltatext}*

	

	admin     ::=  head       {num};

	               { branch   {num}; }

	               access     {id}*;

	               symbols    {sym : num}*;

	               locks      {id : num}*;  {strict  ;}

	               { comment  {string}; }

	               { expand   {string}; }

	               { newphrase }*

	

	delta     ::=  num

	               date       num;

	               author     id;

	               state      {id};

	               branches   {num}*;

	               next       {num};

	               { newphrase }*

	

	desc      ::=  desc       string

	

	deltatext ::=  num

	               log        string

	               { newphrase }*

	               text       string

	

	num       ::=  {digit | .}+

	

	digit     ::=  0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

	

	id        ::=  {num} idchar {idchar | num}*

	

	sym       ::=  {digit}* idchar {idchar | digit}*

	

	idchar    ::=  любой печатаемый символ, кроме special

	

	special   ::=  $ | , | . | : | ; | @

	

	string    ::=  @{любой символ, но @ удваиваются}*@

	

	newphrase ::=  id word* ;

	

	word      ::=  id | num | string | :

Для идентификаторов имеет значение, прописная буква или строчная. Все ключевые слова набраны в нижнем регистре. Множества идентификаторов и ключевых слов могут пересекаться. Для большинства операционных систем в RCS используется стандарт ISO 8859/1 , где печатаемыми символами считаются коды 041-176 и 240-377 в восьмеричной записи, а пробелами -- 010-015 и 040 (что согласуется с КОИ-8 и кодировками IBM для OS2 и MS-Windows [code page 2041] и Mackintosh для славянских языков, но стандартная и альтернативная [code page 866] кодировки для MS-DOS приводят к двоичным файлам).

Даты после ключевого слова date имеют вид Y.mm.dd.hh.mm.ss, где Y -- год, mm -- месяц (01-12), dd день -- (01-31), hh -- час (00-23), mm -- минута (00-59), и ss секунда (00-60). Для обозначения дат с 1900 по 1999 Y представляет собой две последние цифры года; следующие года будут обозначаться четырьмя цифрами. Во внутреннем формате файла используются Григорианский Календарь и Всемирное Время.

Конструкция newphrase зарезервирована для дальнейшего расширения формата системы RCS. Гарантируется, что newphrase не будет начинаться с используемых в настоящее время ключевых слов.

Вершины, соответствующие delta образуют дерево. Вершины с номерами из двух чисел (напр., 2.3, 2.1, 1.3, и т.п.) образуют главную ветвь, и заданы обратными приращениями текста в убывающем порядке версий, начиная с последней версии главной ветви, записанной в архив целиком. Поле head в блоке admin указывает на вершину этой цепочки, т.е. на последнюю в лексикографическом смысле пару. Поле branch в блоке admin указывает на ветвь (или версию) используемую по умолчанию. Если это поле пусто, то используется последняя версия на главной ветви (старшая ветвь, выходящая из последней версии).

Вершины delta, чьи номера заданы 2n числами (n>=2) (напр., 3.1.1.1, 2.1.2.2, и т.п.) связаны следующим образом. Вершины с одинаковыми 2n-1 первыми номерами, упорядочены по последнему полю в возрастающем порядке и заданы прямыми приращениями, начиная с основания побочной ветви -- точке ветвления, заданной 2n-2 числами, общими для побочной ветви. Вершина соответствующая точке ветвления содержит упорядоченный по возрастанию список начальных вершин всех побочных ветвей, выходящих из нее.

Следующая диаграмма демонстрирует организацию информации в архиве.


	                           Head

	                             |

	                             |

	                             v                        / \

	                         ---------                   /   \

	   / \          / \      |       |      / \         /     \

	  /   \        /   \     |  2.1  |     /   \       /       \

	 /     \      /     \    |       |    /     \     /         \

	/1.2.1.3\    /1.3.1.1\   |       |   /1.2.2.2\   /1.2.2.1.1.1\

	---------    ---------   ---------   ---------   -------------

	    ^            ^           |           ^             ^

	    |            |           |           |             |

	    |            |           v           |             |

	   / \           |       ---------      / \            |

	  /   \          |       \  1.3  /     /   \           |

	 /     \         ---------\     /     /     \-----------

	/1.2.1.1\                  \   /     /1.2.2.1\

	---------                   \ /      ---------

	    ^                        |           ^

	    |                        |           |

	    |                        v           |

	    |                    ---------       |

	    |                    \  1.2  /       |

	    ----------------------\     /---------

	                           \   /

	                            \ /

	                             |

        	                     |

	                             v

	                         ---------

	                         \  1.1  /

	                          \     /

	                           \   /

	                            \ /

СМ. ТАКЖЕ
rcsintro(1), ci(1), co(1), ident(1), rcs(1), rcsclean(1), rcsdiff(1), rcsmerge(1), rlog(1)

Walter F. Tichy, RCS--A System for Version Control, Software--Practice & Experience 15, 7 (July 1985), 637-654.

Скидка до 20% на услуги дата-центра. Аренда серверной стойки. Colocation от 1U!

Миграция в облако #SotelCloud. Виртуальный сервер в облаке. Выбрать конфигурацию на сайте!

Виртуальная АТС для вашего бизнеса. Приветственные бонусы для новых клиентов!

Виртуальные VPS серверы в РФ и ЕС

Dedicated серверы в РФ и ЕС

По промокоду CITFORUM скидка 30% на заказ VPS\VDS

VPS/VDS серверы. 30 локаций на выбор

Серверы VPS/VDS с большим диском

Хорошие условия для реселлеров

4VPS.SU - VPS в 17-ти странах

2Gbit/s безлимит

Современное железо!

Новости мира IT:

Архив новостей

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 7861149
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2019 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...