Postagens

Apache Subversion (SVN)

Imagem
O Subversion (SVN) é um sistema de controle de versão centralizado open-source que gerencia arquivos e diretórios controlando as alterações realizadas ao longo do tempo. Além disso, é possível recuperar versões anteriores ou visualizar o histórico de alterações. Tem como ponto forte a utilização em rede, possibilitando que vários usuários possam trabalhar colaborativamente. Permite que você recupere versões antigas de seus dados, ou que examine o histórico de suas alterações. É um sistema de caráter geral que pode ser usado para gerenciar quaisquer conjuntos de arquivos (código-fonte, arquivos de edição de vídeo, etc.) O SVN utiliza o conceito de branches, tags e trunk, em analogia a uma estrutura em árvore: Trunk: pasta que contém os projetos que estão em desenvolvimento. Todas as atualizações efetuadas dia-a-dia são armazenadas nesta pasta. Branches: pasta que contém “linhas de desenvolvimento” de tal projeto, que entre elas podem haver poucas diferenças, porém uma indepe...

Concurrent Version System (CVS)

Imagem
CVS é o avô dos sistemas de controle de versão. Foi lançado pela primeira vez em 1986 e o Google Code ainda hospeda a publicação original do Usenet anunciando o CVS.  A curva de aprendizado não é muito íngreme para o CVS, e é um sistema muito simples para garantir que os arquivos e revisões sejam mantidos atualizados. Embora o CVS possa ser uma tecnologia mais antiga, ainda poder ser útil para qualquer designer ou desenvolvedor para fazer backup e compartilhar arquivos. Tortoise CVS é um ótimo cliente para CVS no Windows, e há muitas IDEs diferentes, como Xcode (Mac), Eclipse, NetBeans e Emacs, que usam o CVS. O CVS tornou-se popular com o mundo do software de código aberto e foi lançado sob a GNU General Public License. Embora houvesse um desenvolvimento regular para adicionar recursos e corrigir erros no passado, incluindo compilações regulares e resultados de testes, não houve novos lançamentos desde 2008. O CVS usa uma arquitetura cliente-servidor: um servido...

Lista de softwares para controle de versão

Imagem
Este post tem o intuito de prover uma visão geral a respeito dos softwares existentes para controle de versão. Constam nesta listagem apenas aqueles mais conhecidos e que contribuíram para a evolução deste tipo de ferramenta. Alguns deles não têm sua utilização encorajada nos dias de hoje devido as suas inúmeras limitações e serão devidamente identificados. Revision Control System (RCS) Sistema de Controle de Revisão (SCR) em português, é uma implementação de software livre de controle de revisão, que segue o paradigma local, onde todos os desenvolvedores devem utilizar o mesmo sistema de arquivos. Armazena a versão mais recente e os deltas atrasados para o acesso mais rápido à ponta do tronco e possui uma interface de usuário melhorada ao custo do acesso lento à derivação do ramo e suporte faltando para deltas incluídos / excluídos. Última versão estável: 22/01/2015; Seu uso não é encorajado;   Disponível em  https://www.gnu.org/software/rcs/ . Concurrent ...
Imagem
História: Como era feito o controle de versão inicialmente e como foi progredindo Pré-história  Houve um momento em que você armazenou suas versões manualmente. Ok, para muitos de vocês desta vez não eram os anos 80, mas alguns anos atrás, quando você estava na faculdade, nomeando seus arquivos de código fonte de exercícios.zip, exercise-0.zip, exercise-good.zip, exercise-good- final.zip, e assim por diante. Bem, acredite ou não, houve um tempo sem SCMs reais. Era sempre escuro e as pessoas viviam em cavernas. RCS  Em 1982 o RCS foi lançado, ele é uma tecnologia enorme, mas você ainda pode encontrá-lo em distros do Unix. É simples e direto ao ponto. Um bom recurso foi que as mudanças de texto foram armazenadas como deltas (muito importante, considerando que os discos rígidos costumavam ser pequenos!). Deltas ainda são usados ​​atualmente pela maioria dos SCMs. Algumas desvantagens do RCS merecem destaque: É apenas texto. Não existe um repositório central; Cada...

Sistema de Controle de Versão: definição e tipos

Imagem
Durante o desenvolvimento de qualquer sistema é evidente que o código sofrerá inúmeras alterações que podem funcionar corretamente, não funcionar ou podem até funcionar mas causar erros em coisas que já estavam funcionando. Em todas essas situações pode existir a necessidade de "voltar atrás" no que foi programado, e nem sempre o CTRL + Z será a melhor opção ou até mesmo será capaz de resolver. Todos esses detalhes e contratempos durante o desenvolvimento de um sistema precisam ser previstos e controlados, caso contrário você perderá muito tempo ou até mesmo todo um software. É nesse momento que entra os Sistemas de Controle de Versão. Sistemas de Controle de Versão (SCV, ou VCS em inglês) são sistemas que visam manter os artefatos gerados durante o desenvolvimento de sistemas de software. Ou seja, todas as mudanças feitas em um arquivo ou um conjunto de arquivos serão registradas e organizadas, em ordem cronológica, em forma de versões. Dessa maneira, quando voc...