Sistema de controle de código fonte
O sistema de controle de código-fonte (SCCS) é um sistema completo de comandos que permite aos usuários especificados controlar e controlar mudanças feitas em um arquivo SCCS. Os arquivos SCCS permitem que várias versões do mesmo arquivo existam simultaneamente, o que pode ser útil ao desenvolver um projeto exigindo muitas versões de arquivos grandes.
Os comandos SCCS suportam caracteres de Multibyte Character Set (MBCS).
Introdução ao SCCS
Os comandos SCCS formam um sistema completo para criação, edição, conversão ou alteração dos controles em arquivos SCCS. Um arquivo SCCS é qualquer arquivo de texto controlado com comandos SCCS. Todos os arquivos SCCS possuem o prefixo s., que os configura além de arquivos de texto regulares.
Atenção: Usar comandos não SCCS para editar arquivos SCCS pode danificar os arquivos SCCS.
Utilize os comandos SCCS em um arquivo SCCS. Se desejar olhar para a estrutura de um arquivo SCCS, use o comando pg ou um comando similar para visualizar seu conteúdo. No entanto, não use um editor para alterar diretamente o arquivo.
Para alterar texto em um arquivo SCCS, use um comando SCCS (como o comando get ) para obter uma versão do arquivo para edição e, em seguida, use qualquer editor para modificar o texto. Após alterar o arquivo, use o comando delta para salvar as alterações. Para armazenar as versões separadas de um arquivo, e controlar o acesso aos seus conteúdos, os arquivos SCCS possuem uma estrutura única.
Um arquivo SCCS é composto por três partes:
- Tabela delta
- Sinalizadores de acesso e
- Corpo do texto
Tabela delta em arquivos SCCS
Em vez de criar um arquivo separado para cada versão de um arquivo, o sistema de arquivos SCCS armazena apenas as alterações para cada versão de um arquivo. Essas mudanças são referidas como deltas. As alterações são rastreadas pela tabela delta em cada arquivo SCCS.
Cada entrada na tabela delta contém informações sobre quem criou o delta, quando o criaram, e por que criaram. Cada delta tem um SID específico (número de IDentificação SCCS) de até quatro algaríos. O primeiro dígito é a liberação, o segundo dígito o nível, o terceiro dígito o galho e o quarto dígito a sequência.
Um exemplo de um número SID é:
SID = 1.2.1.4ou seja, liberação1, nível2, filial1, sequência4.
Nenhum dígito de SID pode ser 0, portanto, não pode haver um SID de 2.0 ou 2.1.2.0, por exemplo.
Cada vez que um novo delta é criado, ele recebe o próximo número de SID superior por padrão. Essa versão do arquivo é construída usando todas as deltas anteriores. Geralmente, um arquivo SCCS cresce sequencialmente, de modo que cada delta é identificado apenas por sua liberação e nível. No entanto, um arquivo pode ramificá-lo e criar um novo subconjunto de deltas. O arquivo tem então um porta-malas, com deltas identificados por liberação e nível, e um ou mais galhos, que possuem deltas contendo todas as quatro partes de um SID. Em uma ramificação, os números de liberação e de nível são fixos, e novas deltas são identificadas por meio de alteração de números de sequência.
Nota: Uma versão de arquivo construída a partir de um ramo não utiliza nenhuma deltas colocada no porta-malas após o ponto de separação.
Controladando e rastreando bandeiras em arquivos SCCS
Após a tabela delta em um arquivo SCCS, uma lista de sinalizadores iniciando com o @ (em sinal) definem as várias opções de acesso e rastreamento do arquivo SCCS. Algumas das funções de sinalização do SCCS incluem:
- Designando usuários que podem editar os arquivos
- Bloqueio de determinados releases de um arquivo da edição
- Permitindo a edição conjunta do arquivo
- Cross-referenciando alterações em um arquivo
Corpo de um arquivo SCCS
O corpo de arquivo SCCS contém o texto para todas as versões diferentes do arquivo. Consequentemente, o corpo do arquivo não se parece com um arquivo de texto padrão. Controlar caracteres de caracteres cada porção do texto e especificar qual delta criou ou excluiu-o. Quando o sistema SCCS constrói uma versão específica de um arquivo, os caracteres de controle indicam as porções de texto que correspondem a cada delta. As peças selecionadas de texto são então usadas para construir essa versão específica.