Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
Бағдарламалық кодты басқару жүйесі (SCCS) – бағдарламалық жасақтаманы әзірлеу кезінде бастапқы код пен басқа мәтіндік файлдардағы өзгерістерді қадағалауға арналған нұсқаны басқару жүйесі. Бұл пайдаланушыға бастапқы кодтың кез келген бұрынғы нұсқаларын және сақталған өзгерістерді алуға мүмкіндік береді. Ол бастапқыда 1972 жылдың соңында Марк Роккинд OS/360 операциялық жүйесінде жұмыс істейтін IBM System/370 компьютері үшін Bell Labs-те әзірленген. SCCS-тің ерекше ерекшелігі – бастапқы кодқа енгізілген және SCCS әрбір өңделісінде автоматты түрде жаңартылатын sccsid жолы. Бұл мысал C бағдарламалау тілінде оны қалай қолдануға болатынын көрсетеді: static char sccsid[] = "@(#)ls.c 8.1 (Berkeley) 6/11/93"; Бұл жолда файлдың аты, күні және түсініктеме болуы мүмкін. Компиляциядан кейін, @(#) үлгісін іздеу арқылы бинарлық және объектілік файлдарда осы жолды табуға болады, бұл компиляция кезінде қандай бастапқы код файлдары қолданылғанын анықтауға көмектеседі. Осы іздеуді автоматтандыру үшін what командасы қолжетімді.
Source Code Control System (SCCS) is a version control system designed to track changes in source code and other text files during the development of a piece of software. This allows the user to retrieve any of the previous versions of the original source code and the changes which are stored. It was originally developed at Bell Labs beginning in late 1972 by Marc Rochkind for an IBM System/370 computer running OS/360. A characteristic feature of SCCS is the sccsid string that is embedded into source code, and automatically updated by SCCS for each revision. This example illustrates its use in the C programming language:
static char sccsid[] = "@(#)ls. c 8.1 (Berkeley) 6/11/93";
This string contains the file name, date, and can also contain a comment. After compilation, the string can be found in binary and object files by looking for the pattern @(#) and can be used to determine which source code files were used during compilation. The what command is available to automate this search for version strings.
Тарих
1972 жылы Марк Роккинд SCCS-ті SNOBOL4-те Bell Labs-те OS/360 MVT жұмыс істейтін IBM System/370 компьютері үшін жасады. Ол Бағдарламалаушының жұмыс үстелі (PWB) операциялық жүйесінің нұсқасымен бірге қолжетімді болды. SCCS-тің 4-ші нұсқасы мәтіндік тарих файл пішімін қолданған алғашқы нұсқа болды, ал одан бұрынғы нұсқалар бинарлық тарих файл пішімін қолданған. 4-ші релизді Марк Роккинд жазған да, оны күтіп ұстаған да жоқ. Кейіннен SCCS AT&T-тің System III және System V коммерциялық дистрибуцияларына енгізілді. Ол BSD-нің алдағысы 32V-мен лицензияланбады. SCCS командалар жиынтығы қазір Бірыңғай UNIX спецификациясының бөлігі болып табылады. SCCS Unix үшін нұсқаларды басқарудың басым жүйесі болды, бірақ кейіннен RCS және одан кейін CVS сияқты нұсқаларды басқару жүйелері кеңінен қолданысқа ие болды. Бүгінде бұл ерте нұсқаларды басқару жүйелері, әсіресе ашық кодты қоғамдастықта, көбінесе ескірген деп есептеледі, себебі көптегендер таратылған нұсқаларды басқару жүйелерін қабылдады. Дегенмен, SCCS файл пішімі әлі де BitKeeper және TeamWare сияқты бірнеше жаңа нұсқаларды басқару бағдарламаларында қолданылады. Соңғысы SCCS-тің интерфейсі болып табылады. Sablime SCCS-тің өзгертілген нұсқасынан жасалған, бірақ SCCS-пен үйлеспейтін тарих файл пішімін пайдаланады. SCCS файл форматы аралас дельталар (немесе тоқу) деп аталатын сақтау әдісін қолданады. Көптеген нұсқаларды басқару жүйесін әзірлеушілер бұл сақтау әдісін "Precise Codeville" ("pcdv") біріктіруі сияқты жетілдірілген біріктіру және нұсқаларды басқару техникаларының негізі деп санайды. 1999 жылы 2000 жылғы мәселелерді түзетуден басқа, UNIX-тің әртүрлі өндірушілерге арналған SCCS нұсқаларында белсенді даму болған жоқ. 2006 жылы Sun Microsystems (қазір Oracle компаниясының бөлігі) Solaris-ті ашық кодқа айналдыру жолында CDDL лицензиясы бойынша SCCS-тің Solaris нұсқасын ашық код ретінде жариялады.
In 1972, Marc Rochkind developed SCCS in SNOBOL4 at Bell Labs for an IBM System/370 computer running OS/360 MVT. It was available with the Programmer's Workbench (PWB) edition of the operating system. Release 4 of SCCS was the first version that used a text based history file format, earlier versions did use binary history file formats. Release 4 was no longer written or maintained by Marc Rochkind. Subsequently, SCCS was included in AT&T's commercial System III and System V distributions. It was not licensed with 32V, the ancestor to BSD. The SCCS command set is now part of the Single UNIX Specification. SCCS was the dominant version control system for Unix until later version control systems, notably the RCS and later CVS, gained more widespread adoption. Today, these early version control systems are generally considered obsolete, particularly in the open source community, which has largely embraced distributed version control systems. However, the SCCS file format is still used internally by a few newer version control programs, including BitKeeper and TeamWare. The latter is a frontend to SCCS. Sablime has been developed from a modified version of SCCS but uses a history file format that is incompatible with SCCS. The SCCS file format uses a storage technique called interleaved deltas (or the weave). This storage technique is now considered by many version control system developers as foundational to advanced merging and versioning techniques, such as the "Precise Codeville" ("pcdv") merge. Apart from correcting Year 2000 problems in 1999, no active development has taken place on the various UNIX vendor specific SCCS versions. In 2006, Sun Microsystems (today part of Oracle) released their Solaris version of SCCS as open source under the CDDL license as part of their efforts to open source Solaris.
Дельта кестесі
SCCS жүйесінде дельта – SCCS файлындағы бір өзгерту. Дельталар дельта кестесінде сақталады, сондықтан әрбір SCCS файлы өзгерістердің жеке тізімін ұстайды. Бұл жүйе басқарудағы файлдардың нұсқалар тарихына қол жеткізуді де қамтамасыз етеді. Бұл командалар драйверлік бағдарлама sccs-те аргумент ретінде орындалады.
In SCCS, a delta is a single revision in an SCCS file. Deltas are stored in a delta table, so each SCCS file has its own record of changes. It also provides access to the revision history of files under management. These commands are implemented as argument verbs to the driver program sccs.
Ашық
$ sccs prt бағдарламасы. c
Бұл команда бастапқы кодтағы өзгерістер туралы есеп жасайды.
$ sccs prt program. c
This command produces a report of source code changes.
UNIX SCCS нұсқалары
UNIX-тің көптеген нұсқаларында SCCS бағдарламасы бар, алайда оның дамуы көбінесе тоқтатылған.
Most UNIX versions include a version of SCCS, which, however, is often no longer actively developed.
Жорг Шиллингтің бұрандасы
Кейінгі de (OpenSolaris жобасының басында SCCS-тің жариялануын сұраған) OpenSolaris бастапқы кодына негізделген SCCS-тің өзгертілген нұсқасын сақтап келді. Ол көптеген жаңа мүмкіндіктермен толықтырылды, бірақ "жаңа жоба" режимін пайдаланбаса, бастапқы SCCS нұсқаларымен үйлесімділігін сақтайды.
The late de (who requested the release of SCCS in the early days of the OpenSolaris project) maintained a fork of SCCS that is based on the OpenSolaris source code. It has received major feature enhancements but remains compatible with the original SCCS versions unless using the "new project" mode.
Мұрагерлік жоба
Heirloom жобасына OpenSolaris бастапқы кодынан туындаған және 2006 жылдың желтоқсанынан 2007 жылдың сәуіріне дейін күтіліп келген SCCS нұсқасы кіреді.
The Heirloom Project includes a version of SCCS derived from the OpenSolaris source code and maintained between December 2006 and April 2007.
GNU түрлендіру бағдарламасы
GNU SCCS-ке үйлесімді GNU CSSC ("Compatibly Stupid Source Control") бағдарламасын ұсынады, ол кейде SCCS архивтерін CVS немесе Subversion сияқты жаңа жүйелерге түрлендіру үшін қолданылады; бұл толыққанды SCCS іске асырылымы емес және жаңа жобаларда қолдануға ұсынылмайды, бірақ көбінесе деректерді басқарудың заманауи жүйесіне ауыстыру үшін пайдаланылады.
GNU offers the SCCS compatible program GNU CSSC ("Compatibly Stupid Source Control"), which is occasionally used to convert SCCS archives to newer systems like CVS or Subversion; it is not a complete SCCS implementation and not recommended for use in new projects, but mostly meant for converting to a modern version control system.
Басқа нұсқаны басқару жүйелері
1990 жылдан бері көптеген жаңа нұсқаны басқару жүйелері дамып, танымал болды. Олар көптеген файлдармен жобаларды басқаруға арналған және бірнеше пайдаланушымен жұмыс, кіруді бақылау, автоматты құрастыру, желілік қолдау, жарияланымды басқару және таратылған нұсқаны басқару сияқты кеңейтілген мүмкіндіктерді ұсынады. Bitkeeper және TeamWare ішкі түрде SCCS файл форматын пайдаланады және оларды SCCS-тің ізбасары деп санауға болады. BSD жүйелерінде SCCSID, ; символымен басталып, аяқталатын RCSID-мен алмастырылады. Тиісті құрал – Бұл жүйе бастапқыда RCS-те қолданылған және кодты алу кезінде автоматты түрде қосылады. Нәтижедегі бастапқы кодтың нұсқасын бақылау идентификаторлары NetBSD және FreeBSD стильдік нұсқауларында олардың өз код базалары үшін сипатталған. NetBSD арнайы кілт сөзді анықтайды, ал FreeBSD макросты анықтайды және қайта атайды. SRC нұсқаны басқару жүйесі ішкі түрде SCCS (немесе RCS) файл форматын пайдалана алады және SCCS үшін жақсы пайдаланушы интерфейсін ұсынуға бағытталған, бірақ тек жеке файлдық жобаларды басқарады.
Since the 1990s, many new version control systems have been developed and become popular that are designed for managing projects with a large number of files and that offer advanced functionality such as multi user operation, access control, automatic building, network support, release management and distributed version control. Bitkeeper and TeamWare use the SCCS file format internally and can be considered successors to SCCS. On BSD systems, the SCCSID is replaced by a RCSID starting and ending with ; the corresponding tool is This system is originally used by RCS and added automatically on checkout. The resulting source code revision control identifiers are documented in the NetBSD and FreeBSD style guides for their own code bases. NetBSD defines the custom keyword while FreeBSD defines and a macro renamed
The SRC version control system can also use the SCCS file format internally (or RCS's) and aims to provide a better user interface for SCCS while still managing only single file projects.