Source Code Control System
| Source Code Control System (SCCS) | |
|---|---|
| Тип | Version control |
| Автор | Марк Рочкинд |
| Разработчик | Лаборатории Белла |
| Написана на |
Первая версия: Снобол4 Переписано: Си |
| Операционные системы | OS/360, Unix, Unix-подобные |
| Дата выпуска | 1973 |
| Аппаратные платформы | IBM System/370, PDP-11, IA-32 |
| Лицензия | проприетарные лицензии, Common Development and Distribution License |
| Сайт | The Open Group Base Specifications Issue 7, IEEE Std 1003.1-2008, 2016 Edition |
Source Code Control System (SCCS) — первая система управления версиями, разработанная в Bell Labs в 1972 году Марком Рочкиндом (англ. Marc J. Rochkind) для компьютеров IBM System/370, работавшая под управлением OS/MVT. В дальнейшем была создана версия для PDP-11 под управлением операционной системы UNIX. В дальнейшем SCCS была включена в состав нескольких вариантов UNIX. Набор команд SCCS в настоящее время является частью Single UNIX Specification.
SCCS являлась самой распространённой системой управления версиями до появления RCS. Несмотря на то, что в настоящее время SCCS следует признать устаревшей системой, формат файлов, разработанный для SCCS, до сих пор используется некоторыми системами управления версиями, такими как BitKeeper и TeamWare. Система Sablime также позволяет использовать файлы SCCS.[1] Для хранения изменений SCCS использует т. н. технику чередующихся изменений (англ. interleaved deltas). Данная техника используется многими современными системами управления версиями в качестве основы для изощрённых методов слияния.
Система SCCS также известна так называемой sccs_id-строкой, например:
static char sccsid[] = "@(#)ls.c 8.1 (Berkeley) 6/11/93";
Строка содержит имя файла, дату, возможно, что-то еще. После компиляции эту строку по шаблону «@(#)» легко отыскать в бинарных и объектных файлах и определить, какие исходные файлы использовались при компиляции.
Базовые команды SCCS
SCCS предоставляет набор команд в виде макросов, которые выполняют или инициируют функции управления исходным кодом с простым синтаксисом, например create, get, edit, prt.[2][3] Он также предоставляет доступ к истории изменений управляемых файлов. Эти команды реализованы в виде аргументов глаголов для программы-драйвера sccs.
Create
Команда create использует текст исходного файла для создания нового файла истории. Например:
$ sccs create program.c
program.c:
1.1
87 lines
В результате выполнения отображаются имя, версия и количество строк кода.
Эта команда представляет собой макрос, который разворачивается в admin для создания нового файла истории, а затем в get для получения этого файла.
Edit
$ sccs edit program.c
1.1
new delta 1.2
87 lines
Редактировать конкретный файл.
Эта команда представляет собой макрос, который разворачивается в get -e.
Delget
$ sccs delget program.c
comments? main function enhanced
1.2
10 inserted
0 deleted
87 unchanged
1.2
97 lines
Проверить наличие новой версии и получить новую версию из sccs.
Эта команда представляет собой макрос, который разворачивается в delta для проверки наличия нового файла версии, а затем в get для получения этого файла.
Get
$ sccs get program.c
1.1
87 lines
В результате выполнения программы отображаются версия и строки, которые вы хотите получить из конкретного файла.
Prt
$ sccs prt program.c
Эта команда создает отчет об изменениях в исходном коде.
Системы UNIX, включавшие SCCS
Примечания
- ↑ Sablime® Configuration Management System. Дата обращения: 22 сентября 2010. Архивировано из оригинала 16 июня 2007 года.
- ↑ An Introduction to the Source Code Control System Eric Allman, Project Ingres, University of California at Berkeley
- ↑ Source Code Control System Programming Utilities Guide
См. также
- SCCS Sourceforge.net
- GNU CSSC («Compatibly Stupid Source Control»), совместимая с SCCS программа, призванная помочь в переходе с SCCS на более современные системы управления версиями, такие как CVS или Subversion; GNU CSSC не рекомендуется для использования в новых проектах.
Ссылки
- M. J. Rochkind: The Source Code Control System. In IEEE Transactions on Software Engineering SE-1:4 (Dec. 1975), pages 364—370. (англ.)
- Greg Hudson: Notes on keeping version histories of files. (англ.) Неопубликованные персональные заметки.
- Marc J. Rochkind. The Story of How SCCS Was Invented, 2016 (англ.)
- SCCS Project, Sourceforge.net (англ.)
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.