Integração GIT no Visual Studio 2012
30 de janeiro de 2013A Microsoft anunciou hoje no evento ALM Summit por meio do Brian Harry uma grande novidade dentro de sua plataforma de Application Lifecycle Management (ALM) que é amplo suporte ao protocolo do GIT permitindo integração nativa no Visual Studio 2012 e no próprio Team Foundation Server. Para quem não conhece o GIT é o principal controle de versão do mercado quando o assunto é Distributed Concurrent Versions System (DCVS) permitindo ao desenvolvedor ter um sistema de controle de versões distribuído independente do servidor.
Para que você possa melhor entender o significado desse anuncio é importante entender que a plataforma do TFS (Team Foundation Server) tem um controle de versão chamado internamente de Team Foundation Server Version Control (TFSVC). O que muda agora é que você terá toda a experiência do Visual Studio / Team Explorer / Work Itens / Scrum e poderá escolher qual o seu controle de versão (GIT/TFSVC).
O que a Microsoft fez nesse grande passo é mais um avanço em sua estratégia de democratizar o ALM ampliando o suporte aos dois principais modelos de controle de versão do mercado, sendo o distribuído baseado no GIT e o centralizado baseado no TFSVC que continuará recebendo grandes investimentos.
A principal diferença é que o desenvolver independente da sua plataforma (Windows, Linux) e da sua ferramenta de desenvolvimento (Visual Studio, Eclipse, Xcode) e qualquer outra que ofereça suporte ao GIT/TFSVC terá a mesma experiência de ALM oferecida pelo Team Foundation Server gerenciando seu projeto, gerenciando o código fonte, integrando o mesmo com as atividades e com serviço de Build.
Para que você possa entender melhor o tamanho dessa decisão o Brian Harry foi quem criou o antigo Source Safe ainda usado em muitos projetos e alguns anos depois na Microsoft criou em conjunto com seu time o que conhecemos hoje como TFS e líder em controle de versão centralizado. A cerca de um ano quando estávamos no MVP Summit na Microsoft em Redmond ficamos sabendo sobre a decisão ainda em NDA (Non-disclosure agrément) de oferecer suporte aos dois modelos conectando um projeto Open Source existente no lugar de criar o seu próprio DCVS.
Uma das coisas que mais defendo nos projetos é não reinventar a roda. E hoje ao escrever esse post vejo mais uma grande lição. Numa decisão estratégica a Microsoft conseguiu focar seus investimentos em trazer uma plataforma que estava presa a ser apenas um controle de versão para um novo patamar de ALM e ao mesmo tempo conseguirá atrair milhares de desenvolvedores novos que já usam o GIT para o Visual Studio / Team Foundation Server.
Agora que você tem a sua opção de escolha ampliada cabe avaliar no seu projeto qual o melhor modelo de trabalho para o controle de versão conforme a necessidade de cada projeto.
Quais são os próximos passos?
Para suportar essas novidades a Microsoft já atualizou o Team Foundation Services que é a sua plataforma de ALM baseada no Windows Azure, assim como liberou atualizações para o Visual Studio 2012 que terá esse suporte nativo apartir do próximo update. Já terá a opção ao criar um novo projeto.
Quanto ao Team Foundation Server?
O Team Foundation Server 2012 que você já tem hoje nada muda por enquanto nessa versão ficando a atualização para uma próxima versão.
Posso ter o GIT em outro servidor externo?
Sim, você pode usar o seu Visual Studio 2012, Team Explorer e ter o serviço do GIT oferecido por um terceiro só não terá o suporte de ALM do TFS.
Em resumo para um completo entendimento:
Hoje completa quase 9 anos desde quando iniciamos a falar de ‘Visual Studio Team System” na Microsoft e foi um grande marco em minha carreira profissional, pois passei a direcionar os investimentos em ciclo de desenvolvimento de software desde o Visual Studio Team System 2005 e é com muita alegria que trago essa grande notícia para vocês. O principal resumo na prática é ter uma plataforma de ALM disponível a todos independentemente da plataforma muito aderente a um mercado como o nosso tanto heterogêneo ‘”Cross-technology ALM platform”.
[Team Foundation Server = Application Lifecycle Management = Cross-technology ALM platform]
– Colaboração para todos envolvidos no projeto.
– Gestão de projetos (Atividades, bugs, backlog, scrumboard, burndown).
– Qualidade de software (Casos de teste, Testes funcionais, Automatizados, carga, evidências, Unitários, cobertura de código…).
– Integração continua (Automação de Build usando .NET / Java …, Entrega continua).
– Gestão de código fonte (TFS Version Control ou GIT, Integração com politicas projeto, atividades, bugs, testes).
– Integração : Visual Studio, Eclipse, Xcode e muitos outros……
– Dashboard e relatórios.
Para saber mais:
Git Support Added to Visual Studio and TFS
Announcing Visual Studio 2012 Update 2 (VS2012.2)
NOTA: E antes de acabar vale lembrar que esse pacote de atualização “Visual Studio 2012 update 2” traz um rico suporte
ao Kanban que conversaremos em outra oportunidade.
[],
Ramon Durães
MVP, Visual Studio ALM
PSM, PSD, CSM