Revision Control System – Wikipédia, a enciclopédia livre
Autor | Walter F. Tichy |
Desenvolvedor | Projeto GNU |
Plataforma | Sistema operacional tipo Unix |
Lançamento | 1982 (41–42 anos) |
Versão estável | 5.9.0 (6 de maio de 2013 | )
Escrito em | C |
Gênero(s) | Sistema de controle de versão |
Licença | GNU General Public License |
Página oficial | www |
Revision Control System (RCS), ou Sistema de Controle de Revisão (SCR) em português, é uma implementação de software de controle de revisão, que automatiza o armazenamento, recuperação, registro, identificação e fusão de revisões. O RCS é útil para texto que é revisado com freqüência, por exemplo, programas, documentação, gráficos processuais, documentos e cartas. Ele também é capaz de lidar com arquivos binários, embora com uma eficiência reduzida. Revisões são armazenados, com o auxílio do utilitário diff.
Desenvolvimento
[editar | editar código-fonte]RCS foi lançado pela primeira vez em 1982[1] [2] por Walter F. Tichy, enquanto ele estava na Universidade de Purdue, como uma alternativa livre e mais evoluída para o então popular Source Code Control System (SCCS) - em português Sistema de Controle de Código Fonte. Ele agora faz parte do Projeto GNU, que ainda está mantendo-o.
Modo de operação
[editar | editar código-fonte]O RCS funciona apenas em arquivos individuais. Não há maneira de trabalhar com um projeto inteiro. Embora ele forneça ramificação para arquivos individuais, a sintaxe da versão é complicada. Em vez de usar ramos, muitas equipes usam apenas o mecanismo interno de bloqueio e trabalham em um único ramo cabeça (head).
Sucessores
[editar | editar código-fonte]CVS
[editar | editar código-fonte]Um sistema simples, chamado CVS, foi desenvolvido com a capacidade de lidar com arquivos RCS em massa, e este era o próximo passo natural da evolução deste conceito, uma vez que "transcende mas inclui" elementos de seu antecessor. CVS era originalmente um conjunto de scripts que utilizaram programas RCS para gerenciar os arquivos. Ele não faz mais isso, porém, atua diretamente nos arquivos.
PRCS
[editar | editar código-fonte]Um sistema posterior de nível mais alto, o PRCS,[3] utiliza arquivos semelhante ao RCS mas nunca foi simplesmente um empacotador. Em contraste com o CVS, o PRCS melhora a compressão delta dos arquivos RCS usando Xdelta.
Vantagens
[editar | editar código-fonte]Em cenários monousuário, como arquivos de configuração do servidor ou scripts de automação, o RCS ainda pode ser a ferramenta de controle de revisão preferida, pois é simples e não há necessidade de repositório central para ser acessível para salvar revisões. Isto a torna uma ferramenta mais confiável quando o sistema está em condições de manutenção terríveis. Além disso, os arquivos de backup salvos são facilmente visíveis para a administração, desta forma a operação é simples. No entanto, não existem mecanismos internos de proteção contra adulterações (ou seja, os usuários que podem usar as ferramentas do RCS para a versão de um arquivo também, pelo projeto, são capazes de manipular diretamente o arquivo de controle de versão correspondente) e isso está levando alguns administradores conscientes à segurança a considerar os sistemas de controle de versão cliente/servidor que restringem a capacidade dos usuários para alterar arquivos de controle de versão.
Aplicação
[editar | editar código-fonte]Alguns mecanismos de wiki, incluindo TWiki e Foswiki, utilizam RCS para armazenar revisões de páginas.
Referências
- ↑ «RCS man page». Consultado em 7 de fevereiro de 2010. Arquivado do original em 9 de maio de 2010
- ↑ Tichy, Walter (1982). «Design, implementation, and evaluation of a Revision Control System». ICSE '82 Proceedings of the 6th international conference on Software engineering: 58–67. Consultado em 12 de junho de 2012
- ↑ MacDonald, Joshua P (9 de maio de 2004). «PRCS, the Project Revision Control System». Consultado em 12 de dezembro de 2008
- Notas
- Walter F. Tichy: RCS--A System for Version Control. In: Software—Practice and Experience. July 1985. Volume 15. Number 7. Pages 637-654. References to the paper at CiteSeer