terça-feira, 29 de outubro de 2013

Tipos de controle de versão - Parte 2


No post passado foi descrito o sistema de controle de versão local. Com ele, é possível manter o histórico de versões de um ou mais arquivos na máquina do usuário. Todavia, esse modo de controle não é útil para o trabalho colaborativo entre as pessoas de um mesmo projeto.

Para resolver esse problema, os arquivos não são mais mantidos na máquina local do usuário e sim, em um local comum em que todos envolvidos possam ter acesso. Esse modelo de controle é conhecido como sistema de controle de versão centralizado.

Este modelo fornece não apenas acesso aos arquivos para as pessoas que deles necessitam, mas também oferece visibilidade sobre o que outras pessoas estão trabalhando. Como os arquivos são armazenados em um único servidor central, a partir do qual todos precisam compartilhar os arquivos, todas as alterações feitas neles são automaticamente compartilhadas com outras pessoas envolvidas no projeto.


Fonte: SOMASUNDARAM, R. Git: Version Control for Everyone Beginner's Guide. Birmingham - Mumbai: Packt Publishing Ltd, 2013.

sexta-feira, 25 de outubro de 2013

Tipos de controle de versão - Parte 1


Existem basicamente três tipos de sistemas de controle de versão.

  • Sistema de controle de versão local
  • Sistema de controle de versão centralizado
  • Sistema de controle de versão distribuído

Hoje, iremos descrever o sistema de controle de versão local

Sistema de controle de versão local

O sistema de controle de versão local trabalha mantendo um conjunto de patchs, (diferenças entre diversos estágios de mudança de um arquivo). Desta forma, ele permite que o usuário volte para qualquer ponto (versão) do arquivo salvo anteriormente. Esses arquivos são armazenados no disco local da máquina do usuário, em um formato específico, dentro da chamada trilha de versão. A recuperação de um arquivo para um estado anterior, é feita através da junção de todos os patchs necessários a partir de um determinado ponto.


Fonte: SOMASUNDARAM, R. Git: Version Control for Everyone Beginner's Guide. Birmingham - Mumbai: Packt Publishing Ltd, 2013.

quinta-feira, 24 de outubro de 2013

No processo de desenvolvimento de software, principalmente em grandes equipes de trabalho, há uma preocupação em relação a execução de atividades que demandam trabalho compartilhado. Controlar as alterações feitas em um determinado projeto, principalmente em módulos ou códigos em que várias pessoas da equipe precisam trabalhar simultaneamente, torna-se ainda mais importante.

Visando evitar esses tipos de problemas, foram criados os Sistemas de Controle de Versão que têm como objetivo controlar as modificações feitas em determinados módulos/códigos, e ainda permitir a criação de versões que possam ser estendidas e disponibilizadas em projetos futuros.

Existem várias ferramentas disponíveis para esse propósito, algumas livres como o SVN (Subversion), CVS (Concurrent Version Systems), e Git; outras pagas como o ClearCase da IBM e o SourceSafe da Microsoft. Cada uma delas têm seus prós e contras e é preciso analisar esses pontos para escolher a ferramenta adequada para a equipe de trabalho.


Fonte:  Avaliação de uma ferramenta de controle de versões de software com o modelo de avaliação OPENBRR. Gestão da Produção, Operação e Sistemas - Ano 5, nº 3, Jul-Set/2010, p.149-165. 

quarta-feira, 23 de outubro de 2013

Boas vindas

Sejam bem-vindos ao FRRW Gerência. Neste espaço apresentaremos os Sistemas de Controle de Versão.
Desfrute-os!