Alojamento Developers (GIT)

by PTisp
Git para developers

A maioria dos developers já devem ter passado pelo drama de trabalhar em equipa através de pastas partilhadas, envio de ficheiros por email, entre outros cenários. Quando vários membros de uma equipa trabalham nos mesmos ficheiros simultaneamente torna-se difícil gerir conflitos e, inevitavelmente, surgem problemas como por exemplo a sobreposição de código. A versão de ficheiros é outro ponto crítico na gestão manual de projectos.

Estes cenários acabam por resultar em imensos ficheiros/pastas com nomes diferentes para manter um histórico de versões. Este procedimento é desorganizado, inseguro, impraticável e gasta demasiados recursos. Estes são, entre outros, os principais motivos que justificam a utilização de um sistema de controlo de versões.

sistema de controlo de versões

trabalho em equipa com pasta partilhada

Sobre controlo de versões:
É um sistema que captura as alterações efetuadas nos ficheiros de um projeto ao longo do tempo, de forma a possibilitar a sua gestão.
Este torna possível reverter ficheiros para estados anteriores, reverter um projecto completo para uma data específica, comparar alterações ao longo do tempo, verificar quem efectuou uma determinada alteração que pode estar a causar um problema e muito mais.

Este sistema é útil não só para developers mas também para designers que pretendem ter controlo sobre os seus projectos, desde freelancers até equipas de maior dimensão.

Situações por que já passou:
– Efectuar uma alteração no código, aperceber-se que tem um erro e querer revertê-la;
– Perder código ou ter um backup desatualizado;
– Querer comparar diferenças de código entre versões;
– Querer comprovar que uma determinada alteração corrigiu ou danificou o código;
– Querer consultar histórico do código;
– Querer efectuar uma alteração no código desenvolvido por um colega;
– Querer partilhar o seu código com outras pessoas;
– Querer controlar o trabalho que tem sido desenvolvido num determinado projeto;
– Querer experimentar uma nova funcionalidade sem interferir com o código de produção.

O que é o GIT?:
É um sistema de controlo de versões distribuído que utiliza o conceito de repositórios locais e repositórios remotos, sendo os primeiros armazenados nas máquinas dos utilizadores e os segundos num servidor.

As alterações que vão sendo efetuadas no código de um projecto vão-se refletindo nos ficheiros de trabalho do utilizador, não afetando os repositórios. Por outras palavras, estas alterações não são registadas no sistema de versões até serem devidamente submetidas.

O utilizador tem a capacidade de submeter as alterações que entender, e quando entender, para o seu repositório local e de seguida sincronizar o repositório remoto.
O GIT permite trabalhar offline, grande vantagem face a sistemas de controlo de versões centralizados. Esta organização permite que os utilizadores desempenhem o seu trabalho localmente e que a integração de código entre membros seja feita através da sincronização com servidor.

Branches:
O GIT permite gerir “N” variantes de cada repositório. O conceito de “branch” permite criar ramificações a partir do projecto original, onde podem ser desenvolvidas funcionalidades paralelamente. Estas alterações podem ser devolvidas ao branch de origem ou podem ser aplicadas noutros branches (merge).

Porquê utilizar GIT:
– É multiplataforma (Windows, Mac OS, Linux, etc);
– É rápido e intuitivo;
– É distribuído, permite trabalhar offline;
– Permite acompanhar alterações de código;
– Permite colaboração nos projetos;
– Permite gerir versões de ficheiros eficazmente;
– Gestão de branches;
– Permite ignorar determinados ficheiros que não devem entrar no repositório;
– Permite gravar um estado de alterações temporárias para aplicar mais tarde (stash)
– Permite retroceder um projecto para uma versão antiga de forma simples;
– Permite descobrir a origem de um problema mais fácil;
– Mais segurança – o código fica guardado de forma redundante;
– Permite gerir conflitos de código;
– Permite gerir releases dos projectos.

Quem deve usar controlo de versões:
Toda a gente. Se é um membro de um equipa de software é fácil perceber que sem este sistema o “caos” pode surgir a qualquer momento.
Contudo, a utilidade do controlo de versões não se limita apenas a equipas. A maioria dos benefícios aplicam-se também a singulares.

A PTisp disponibiliza planos ideais para developers com suporte a GIT. Consulte a nossa oferta aqui
ptisp.pt – Wherever internet can take you…

0 comment
Translate »