Team Foundation Server como controle de versão universal

Igor Abade V. Leite

Publicado em: 10 de outubro de 2006

Sua equipe de desenvolvimento não usa o Visual Studio 2005 e por isso você acha que o TFS não lhe interessa? Acho que você pode mudar de opinião.

*
Nesta página
IntroduçãoIntrodução
Team Foundation Server MSSCCI ProviderTeam Foundation Server MSSCCI Provider
Acesso em outras plataformas e linguagensAcesso em outras plataformas e linguagens
Acesso via WebAcesso via Web
ConclusãoConclusão

Introdução

O Team Foundation Server é um servidor de Gerência de Configuração de Software de última geração. Ele oferece o estado-da-arte em termos de gerenciamento de work items (“itens de trabalho”) e controle de versão. Ele faz parte da família de produtos Visual Studio 2005 Team System. Como conseqüência, o Visual Studio 2005 (versões Professional e Team Editions) é a ferramenta que oferece o maior nível de integração com o TFS – em especial com o TFVC, Team Foundation Version Control.

Mas nem por isso equipes de desenvolvimento que utilizem outras ferramentas de desenvolvimento – Delphi e Java, por exemplo – não podem usufruir de benefícios como repositório transacional baseado em SQL Server e integração com work items. Ainda que esses profissionais possam sempre contar com o Team Explorer (interface stand-alone do cliente do Team Foundation Server) para interagir com o TFS, é certo que uma integração nativa com o IDE – como a disponível no Visual Studio 2005 – é sempre muito mais conveniente.

A Microsoft oferece integração nativa apenas com o Visual Studio 2005. Porém, a arquitetura aberta e baseada em padrões do TFS (HTTP, SOAP) criou um próspero mercado em que parceiros vêm desenvolvendo clientes alternativos para o TFS. Há grandes chances que seu ambiente de desenvolvimento preferido já ofereça integração com o Team Foundation Server!

Veja alguns exemplos de integração com IDEs além do Visual Studio 2005:

*
*

Borland C++ Builder (v3 a v6)

Epocalipse SourceConneXion +

Microsoft Team Foundation Server MSSCCI Provider

Borland Delphi (v3 a v7)

Epocalipse SourceConneXion +

Microsoft Team Foundation Server MSSCCI Provider

Borland Developer Studio (2005, 2006)

Epocalipse SourceConneXion +

Microsoft Team Foundation Server MSSCCI Provider

Eclipse

Teamprise

Microsoft Access 2003

Access 2003 Add-in: Source Code Control +

Microsoft Team Foundation Server MSSCCI Provider

Microsoft SQL Server 2005 Management Studio

Microsoft Team Foundation Server MSSCCI Provider

Microsoft Visual Basic 6.0

Microsoft Team Foundation Server MSSCCI Provider

Microsoft Visual Studio 6.0

Microsoft Team Foundation Server MSSCCI Provider

Visual Studio .NET (2002, 2003)

Microsoft Team Foundation Server MSSCCI Provider

Tabela 1 – Produtos que oferecem integração direta de outros IDEs com o TFS

Início da páginaInício da página

Team Foundation Server MSSCCI Provider

O TFS MSSCCI Provider é uma solução da Microsoft para oferecer acesso integrado ao TFS para todas as ferramentas que utilizam a API MSSCCI – criada originalmente para integração com o Visual SourceSafe. Diversos produtos da Microsoft utilizam essa API e podem, portanto, utilizar nativamente o TFS.

Para utilizar o TFS nessas e outras ferramentas que oferecem suporte à API MSSCCI, instale primeiramente o Team Foundation Client e então o TFS MSSCCI Provider (disponível para download no site da Microsoft).

Todos os recursos disponíveis no check-in do Visual Studio 2005 (comentários, associação a work items, notas, check-in policies ) estão também disponíveis nos IDEs que se utilizam desta ferramenta.

Figura 1 - Integração do TFS no Visual Studio .NET 2003

Figura 2 - Visual Basic também pode ser integrado ao TFS

Figura 3 - Integração do TFS com o Access 2003

Início da páginaInício da página

Acesso em outras plataformas e linguagens

Se você utilizar uma ferramenta de desenvolvimento que não oferece suporte nativo ao TFS (nem à MSSSCI API) pode utilizar ferramentas de terceiros. Já há inclusive soluções cross-platform que permitem o acesso ao TFS a partir de computadores Mac ou Linux.

Epocalipse SourceConneXion

O SourceConneXion ( http://www.epocalipse.com/scx.htm ) tira proveito da MSSCCI API (também conhecida simplesmente por SCC API ) para oferecer integração entre as ferramentas de desenvolvimento da Borland (C++ Builder, Delphi e BDS) e todos os servidores de controle de versão que oferecem suporte a essa API – com destaque para o Visual SourceSafe e o TFS.

Figura 4 - Epocalipse SourceConneXion

Teamprise (integração cross-platform com Eclipse)

O Teamprise ( www.teamprise.com ) oferece acesso nativo ao TFS a partir do Eclipse, IDE open-source usado tipicamente por desenvolvedores Java. Por ser uma solução 100% Java, pode ser usado em computadores com Windows ( Figura 5 ), Linux ( Figura 6 ) ou Macintosh ( Figura 7 ). Com isso o TFS destaca-se ainda mais como um sério concorrente a outras soluções de controle de versão tipicamente usadas por desenvolvedores Java, tais como CVS e Subversion.

Figura 5 - Teamprise no Windows

Figura 6 - Teamprise no Linux

Figura 7 - Teamprise no Mac

Início da páginaInício da página

Acesso via Web

Usuários de ferramentas como CVS e Subversion contam com ferramentas que permitem a visualização de seus repositórios pela Internet, através de um browser (por exemplo ViewCVS e ViewSVN). Porém, essas ferramentas tipicamente limitam-se a oferecer um acesso somente-leitura ao repositório remoto de controle de versão.

Por outro lado, o TFS já conta com ferramentas de terceiros que oferecem acesso completo (inclusive check-in e check-out) valendo-se apenas do browser.

Teamplain Web Access (cliente Web para o TFS)

Usuários do Visual SourceSafe sempre se queixaram de que o acesso remoto (pela Internet) a um repositório do VSS era no mínimo sofrível. O TFS mudou completamente esse cenário por utilizar Web Services (HTTP + SOAP) como o protocolo exclusivo para toda e qualquer comunicação entre clientes e o servidor. Hoje é realmente muito simples para um membro de uma equipe de desenvolvimento conectar-se de sua casa ao TFS da empresa – sem sequer precisar de uma VPN.

O Teamplain Web Access ( http://www.devbiz.com/teamplain/webaccess ) leva o conceito de acesso remoto para o próximo nível. Não é preciso ter nenhum cliente (Team Foundation Client ou outro qualquer) instalado em seu computador para ter acesso ao servidor de sua empresa ( Figura 8 ). Toda a interação com o TFVC (check-in, check-out e tudo o mais) se dá através do browser.

Figura 8 - Acesso remoto ao TFS através do Teamplain

NOTA As ferramentas mostradas aqui são produtos desenvolvidos e comercializados por terceiros e foram mencionadas apenas como exemplo do potencial do TFS como ferramenta universal de controle de versão. Além de produtos comerciais, existem também soluções open-source para acesso ao TFS. Visite o CodePlex ( www.codeplex.com) para saber mais.

Início da páginaInício da página

Conclusão

Não baseie suas decisões apenas neste artigo. Teste você mesmo!

O Team Foundation Server pode ser baixado gratuitamente do site da Microsoft (versão de demonstração com todos os recursos; expira em 180 dias). Além disso, todas as ferramentas mencionadas oferecem versões de demonstração para que você teste se a solução atende às suas necessidades.

Estou certo de que depois de um tempo você não vai querer nenhum outro sistema de Gerência de Configuração de Software – simplesmente porque não vai encontrar nenhum outro produto que ofereça o nível de integração e facilidade de uso encontrado no TFS. Bom divertimento!

Igor Abade V. Leite (igoravl@gmail.com) possui as certificações MCAD, MCDBA e MCSD.NET - é arquiteto de soluções da FórumAccess Consultoria e membro fundador do VSTS Rocks Brasil Core Team ( http://www.vstsrocks.com.br ). Visite seu blog em http://blogs.vstsrocks.com.br/igoravl .

Microsoft Source Code Control Interface é uma especificação criada pela Microsoft para que sistemas de controle de versão de terceiros pudessem oferecer integração nativa com o Visual Studio. Inicialmente a única ferramenta a utilizar essa interface era o Visual SourceSafe, mas hoje já existem alternativas. Além disso, algumas ambientes integrados de desenvolvimento (IDEs) de terceiros tiraram proveito dessa especificação para oferecer integração com o Visual SourceSafe.


Início da páginaInício da página