El soporte de equipo de Eclipse define una API que permite a los conectores integrar la función de un repositorio de gestión de configuración y versiones. La función suministrada por un repositorio afecta fundamentalmente al flujo de trabajo de los usuarios, ya que existen pasos adicionales para recuperar archivos, comparar su contenido con el contenido local, crear versiones de ellos y devolver los archivos actualizados al repositorio. El objetivo de la API de conector de equipo consiste en ser lo suficientemente pasiva como para permitir que los proveedores de conector de repositorio definan su propio flujo de trabajo a fin de que los usuarios que estén familiarizados con el producto puedan utilizar la plataforma de forma parecida y suministrar soporte para flujos de trabajo considerados de utilidad para los conectores de equipo.
Este objetivo se materializa suministrando varios bloques de construcción:
Un proveedor de repositorios permite la sincronización de los recursos del área de trabajo con una ubicación remota. En su versión mínima, permite enviar los recursos del área de trabajo a una ubicación remota y realizar el proceso inverso. Un proveedor de repositorios se asocia con un proyecto y controla los recursos del mismo proporcionando opcionalmente un IFileModificationValidator y un IMoveDeleteHook. Sólo existe un proveedor de repositorios asociado con cada proyecto. El usuario asocia un proveedor de repositorios con un proyecto suministrando un IConfigurationWizard. Los proveedores de repositorios también pueden participar en la exportación e importación de proyectos en el área de trabajo por medio de la característica de conjunto de proyectos de equipo. Para dar soporte a esta característica, un proveedor de repositorios debe implementar una ProjectSetCapability.
Permite a otros conectores indicar el manejo especial de los recursos con respecto a operaciones de equipo. El proveedor de repositorios puede marcar los recursos como privados del equipo, con lo que esencialmente el recurso queda oculto a los demás conectores. Esta operación se realiza por medio del método IResource#setTeamPrivateMember y se lleva a cabo generalmente para ocultar al usuario metaarchivos específicos del proveedor de repositorios. Asimismo, los constructores marcarán con frecuencia la salida de construcción como derivada, lo que ofrece al proveedor de repositorios un indicio de que el recurso es temporal y puede pasarlo por alto. Un proveedor puede colocar este distintivo en un recurso por medio del método IResource#isDerived.
Además, otros conectores pueden añadir sugerencias para el proveedor de repositorios relativas a la información de tipo de archivo por medio de la extensión org.eclipse.team.core.fileTypes y acerca de archivos comunes que el repositorio debe pasar por alto por medio de la extensión org.eclipse.team.core.ignore.
El soporte de sincronización suministra clases e interfaces para gestionar colecciones dinámicas de información de sincronización (SyncInfo, SyncInfoSet). Este soporte ayuda a gestionar información relativa a las variantes de los recursos del área de trabajo. Por ejemplo, con FTP puede almacenar indicaciones de la hora para el archivo remoto más reciente y para la base del recurso cargado actualmente. El soporte de sincronización proporciona API que facilitan la gestión y la persistencia de variantes de recurso y la visualización del estado de sincronización por parte del usuario.
El soporte de la UI también está estructurado de manera pasiva. El conector de la UI del equipo es el que define los espacios reservados para las acciones, las preferencias y las propiedades del proveedor del equipo, pero se deja que sea el proveedor del conector del equipo el que defina estos elementos de la UI. El conector de la UI del equipo también incluye un asistente de configuración simple y ampliable que permite a los usuarios asociar proyectos a los repositorios. Los conectores pueden suministrar contenido para este asistente, que permita al usuario especificar información específica del repositorio.
Puede haber varios proveedores de repositorios que coexistan pacíficamente en la plataforma. De hecho, incluso es posible tener instaladas distintas implementaciones de cliente para un mismo repositorio.Por ejemplo, una podría instalar un cliente CVS diseñado para los expertos y otra para los usuarios principiantes.