O suporte de equipa do Eclipse define APIs que permitem aos plug-ins integrarem as funcionalidades de um repositório de gestão de versionamento e configuração. As funcionalidades oferecidas por um repositório afectam fundamentalmente o fluxo de trabalho do utilizador, dado que há passos adicionais para obter ficheiros, comparar o conteúdo destes com conteúdo local, versioná-los e devolver ficheiros actualizados ao repositório. O objectivo da API de plug-ins de equipa consiste em ser passivo o bastante para permitir aos fornecedores de plug-ins de repositórios definirem o seu próprio fluxo de trabalho, de modo a que os utilizadores conhecedores do seu produto possam utilizar a plataforma de maneira semelhante e facultar suporte a fluxos de trabalhos que tenhamos considerado úteis para plug-ins de equipa.
Este objectivo realiza-se por meio de vários passos:
Um fornecedor de repositórios permite sincronização de recursos de espaço de trabalho com uma localização remota. No mínimo permite veicular recursos no espaço de trabalho para uma localização remota e atrair recursos de uma localização remota para o espaço de trabalho. Um fornecedor de repositórios está associado a um projecto e controla os recursos no mesmo ao facultar opcionalmente um IFileModificationValidator e IMoveDeleteHook. Só há um fornecedor de repositórios associado a cada projecto. Um utilizador associa um fornecedor de repositórios a um projecto facultando um IConfigurationWizard. Os fornecedores de repositórios também podem participar na exportação e importação de projectos para o espaço de trabalho através da função de conjunto de projectos de equipa. Para suportar isto, o fornecedor de repositórios deve implementar uma ProjectSetCapability.
Permite a outros plug-ins indicarem tratamento especial de recursos no que respeita a operações de equipa. O fornecedor de repositórios pode marcar recursos como privados da equipa, o que os oculta essencialmente de outros plug-ins. Tal realiza-se com o método IResource#setTeamPrivateMember e geralmente para ocultar meta-ficheiros específicos do fornecedor de repositórios dos olhos do utilizador. Além disso, os construtores costumam marcar saídas de dados de construção como derivadas, o que é uma pista para um fornecedor de repositórios em como o recurso é transitório e poderá ser ignorado pelo fornecedor de repositórios. Um fornecedor poderá verificar este sinalizador num recurso através do método IResource#isDerived.
Além disso, os outros plug-ins podem adicionar pistas ao fornecedor de repositórios sobre informações de tipo de ficheiros através da extensão org.eclipse.team.core.fileTypes e acerca de ficheiros comuns que devam ser ignorados pelo repositório com a extensão org.eclipse.team.core.ignore.
O suporte de sincronização faculta classes e interfaces para gerir recolhas dinâmicas de informações de sincronização (SyncInfo, SyncInfoSet). Este suporte ajuda a gerir informações sobre variantes dos recursos no espaço de trabalho. Por exemplo, com FTP poderá armazenar marcas de hora relativas ao ficheiro remoto mais recente e a base relativa ao recurso carregado actualmente. O suporte de sincronização faculta APIs para ajudar a gerir e a tornar persistentes variantes de recursos e apresentar o estado de sincronização ao utilizador.
O suporte de integração de modelos lógicos define a API que permite que os modelos lógicos participem em operações da equipa. Nas vistas baseadas em modelos, os fornecedores de modelos podem utilizar este suporte de modo a que as decorações da equipa e as operações sejam apresentadas nos respectivos elementos dos modelos. Em vistas baseadas em recursos, (como por exemplo, o Navegador de Recursos), os fornecedores de modelos podem utilizar este suporte para validar o facto de as operações executadas nos recursos não corromperem o modelo e para assegurar que todos os recursos que constituem um elemento do modelo estão incluídos nas operações da equipa. No caso das operações de intercalação das equipas, a API permite que os fornecedores de modelos utilizem a semântica dos modelos durante as operações de intercalação e que participem na pré-visualização dessas operações. A descrição do suporte para a integração do modelo lógico é divido em Guia de Consulta de Repositórios para a Integração de Modelos Lógicos e Guia de Consulta de Modelos para a Integração de Modelos Lógicos.
O suporte de UI também está estruturado passivamente. Os marcadores de lugar para acções de fornecedor de equipa, preferências e propriedades são definidos pelo plug-in da UI da equipa, mas compete ao fornecedor do plug-in da equipa definir estes elementos da UI. O plug-in da UI da equipa também inclui um assistente de configuração simples e extensível que deixa os utilizadores associarem projectos a repositórios. Os plug-ins podem facultar conteúdo para este assistente que deixe o utilizador especificar informações específicas de repositório.
Podem coexistir pacificamente fornecedores de repositórios numa plataforma. Aliás, até é possível ter diferentes implementações clientes para o mesmo repositório instalado. Por exemplo, poder-se-ia instalar um cliente CVS concebido para peritos e um diferente para utilizadores novatos.