Total de visualizações de página

sábado, 4 de fevereiro de 2012

Sistema de Controle de Versão GIT

Neste post vou explanar sobre uma ferramenta muito importante para o desenvolvimento de software, o Sistema de Versionamento GIT. Este tema foi proposto por um professor da minha graduação para a elaboração de um trabalho. Como a minha equipe teve muita dificuldade em encontrar material sobre GIT, principalmente para usuários Windows, resolvi trazer algumas informações para auxiliar quem busca dados sobre o GIT.
Primeiramente, vamos explicar o que é um Sistema de Versionamento ou, como também é chamado, Sistema de Controle de Versão.

Sistema de Controle de Versão
Ele é utilizado para controlar e efetuar as modificações que ocorrem em um software em desenvolvimento. Quando se participa de grupos de desenvolvimento de projetos, existe a necessidade de vários desenvolvedores trabalharem em uma mesma parte do sistema. Para que todos saibam o que cada membro do grupo fez e para que cada modificação do sistema, incluindo a documentação, esteja disponível para todos os envolvidos, utilizam-se os sistemas de versionamento. Contudo, não impede que estes sistemas sejam utilizados por um único desenvolvedor, muito pelo contrário, seu uso já é uma necessidade.
Os controles de versão também auxiliam para que um desenvolvedor não sobrescreva o código de outro.
Mas, como um sistema de controle de versão funciona? O coração de um Sistema Controle de Versão é o repositório. Nele os arquivos ficarão armazenados e, assim que alguém fizer uma operação denominada commit (comando do GIT e de outros sistemas de versão), a parte disponibilizada por este desenvolvedor poderá ser acessada pelos outros membros da equipe, ou qualquer um que tiver acesso ao repositório.
O repositório conterá o histórico dos arquivos e, por meio dele, podemos descobrir a data em o arquivo foi anexado e quem o fez.
Em um sistema de versão cada usuário faz uma cópia do arquivo e pode trabalhar nele de forma independente. O comando que geralmente é utilizado para fazer esta cópia é o update. Como auxílio da figura 1 pode-se entender um pouco melhor o funcionamento desta ferramenta.

Figura 1: Acesso ao repositório

Em configurações distribuídas também são utilizados os comandos push e pull para fazer a cópia e a disponibilização dos arquivos, respectivamente. Outras expressões que aparecem muito nos sistemas de versão são: o branch e o merge. O primeiro é utilizado para criar ramificações (uma “sub-versão”) do sistema principal, enquanto o merge é usado para fazer a mescla, uma junção.
Ambientes de desenvolvimento como o NETBEANS e o ECLIPSE já possuem suporte para controle de versão.
Existem vários Sistemas de Versionamento disponíveis atualmente, tais como: Clear Case, SVN, Microsoft SourceSafe e o GIT, dentre outros.

GIT
    O GIT é uma criação do mago da computação, Linus Torvalds. Sendo assim, para não contrariar a filosofia do criador, o GIT é open-source, rápido e eficiente.
    O GIT é um sistema de versionamento distribuído que ganhou espaço rapidamente.
    Criado para o Linux, o GIT funciona por linha de código. Mas os usuários de Windows não foram esquecidos e foi lançado o msysgit. Ele pode ser obtido no endereço: http://code.google.com/p/msysgit/. Como pode ser observado na figura 2, basta clicar no item destacado.
  
 Figura 2: Página para download do msysgit

    Está sendo dado um destaque especial a versão para Windows devido à falta de documentação para os usuários deste sistema operacional.
    Depois de efetuado o download, é só dar um duplo clic sobre a pasta do arquivo e a instalação será iniciada. Ao completar a instalação a janela do msysgit surgirá. Entretanto, esta é a janela para a utilização de linhas de comando. Para utilizar a versão gráfica, basta ir no MENU INICIAR -> TODOS OS PROGRAMAS -> GIT -> GIT GUI. Após estes passos deverá aparecer a janela como mostrado na figura 3.
   
 Figura 3: Página inicial do GIT GUI

O próximo passo é a criação ou, se já existir, a designação da pasta onde funcionará o repositório, como sugere a figura 4.
     
Figura 4: Criação do repositório do GIT GUI

    Ao término destas etapas o GIT está pronto para o uso e sua aparência pode ser visualizada na figura 5.

Figura 5: Aparência do GIT GUI

    A seguir, encontra-se uma lista e o resumo dos códigos para quem preferir utilizar o GIT via linhas de comando.


    Tentou-se, neste post, dar uma introdução ao sistema de controle de versão GIT. Apesar de ser simples de usar, sabe-se que dúvidas podem surgir e e-mails podem ser enviados para: silveira-fabio@hotmail.com. Porém, não esqueçam de citar no campo assunto que trata-se de uma dúvida referente ao blog.
    Infelizmente, bibliografia sobre sistemas de versionamento, em especial sobre o GIT, são difíceis de encontrar e não se tem nenhum livro, no momento, para se indicar. Todavia, alguns sites podem ajudar:

http://blog.locaweb.com.br/tecnologia/evolucao-de-versionamento-de-codigo-git/

http://www.pronus.eng.br/artigos_tutoriais/gerencia_configuracao/conceitos_basicos_controle_versao_centralizado_e_distribuido.php?pagNum=3

    Obrigado e até o próximo post!

Nenhum comentário:

Postar um comentário