você está aqui: Home  → Arquivo de Mensagens

Uso o RCS para edição de arquivos do sistema

Colaboração: José Arthur Benetasso Villanova

Data de Publicação: 10 de Novembro de 2003

O RCS (Revision Control System) é uma boa solução para a edição de arquivos do sistema. Com ele você pode salva apenas as diferenças entre ve rsões em um único arquivo, ao invés de ter um arquivo para cada versão antiga.

Como um exemplo simples, editemos o arquivo /etc/passwd:

Primeiro passo: salvar a versão anterior:

  # ci -l /etc/passwd
  /etc/passwd,v  <--  /etc/passwd
  enter description, terminated with single '.' or end of file:
  NOTE: This is NOT the log message!
  >> Arquivo de senhas da máquina localhost.
  >> .
  initial revision: 1.1
  done

Altere o que for necessário e, após a edição, salve a versão atual:

  # ci -l /etc/passwd
  /etc/passwd,v  <--  /etc/passwd
  new revision: 1.2; previous revision: 1.1
  enter log message, terminated with single '.' or end of file:
  >> Adição de um novo usuário.
  >> .
  done

Supondo que alguém (obviamente não você) introduziu um erro nesse arquivo. Veja o que há de diferente entre a versão atual e a última gravada no arquivo das revisões.

  # rcsdiff /etc/passwd
  ===================================================================
  RCS file: /etc/passwd,v
  retrieving revision 1.2
  diff -r1.2 /etc/passwd
  41a42
  > aaa

Depois de avaliadas as diferenças, corrija o erro e atualize se arquivo de versões. Caso existam muitas mudanças, talvez seja mais convenient e sobrescrever o arquivo com uma versão funcional.

  # co /etc/passwd
  /etc/passwd,v  -->  /etc/passwd
  revision 1.2 (locked)
  writable /etc/passwd exists; remove it? [ny](n): y
  done

Caso queria a versão original, basta especificar com a flag -r:

  # co -r1.1

Pronto, agora a versão do arquivo /etc/passwd é a Original (1.1).

Outro comando interessante é o rlog, que mostra as mensagens de log gravadas na criação de cada versão.

  # rlog /etc/passwd
  
  RCS file: /etc/passwd,v
  Working file: /etc/passwd
  head: 1.2
  branch:
  locks: strict
          root: 1.2
  access list:
  symbolic names:
  keyword substitution: kv
  total revisions: 2;     selected revisions: 2
  description:
  Arquivo de senhas da máquina localhost.
  
  revision 1.2    locked by: root;
  date: 2003/07/23 17:56:12;  author: root;  state: Exp;  lines: +1 -0
  Adição de um novo usuário.
  
  revision 1.1
  date: 2003/07/23 17:54:34;  author: root;  state: Exp;
  Versão original.
  

Isso é o suficiente para o uso básico do RCS. As manpages 'rcs', 'ci', 'co', etc. contém muita informação útil caso queira se aprofundar.



Veja a relação completa dos artigos de José Arthur Benetasso Villanova

 

 

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script