Pregunta

Soy nuevo en TeamCity y tenemos una serie de proyectos comunes bajo control de origen que luego se referencian directamente dentro de los proyectos relevantes, es decir:

Common
  branches
  tags
  trunk
    CommonProject
      CommonProject.csproj
    Common.sln
ProjectX
  branches
  tags
  trunk
    ProjectX.sln

Como resultado, la referencia a " CommonProject.csproj " en " ProjectX.sln " es algo similar a ... \ Common \ trunk \ CommonProject \ CommonProject.csproj que está bien en nuestro entorno de desarrollo, pero cuando se trata de TeamCity se cae diciendo que no puede encontrar el camino "... \ Common \ trunk \ CommonProject \ CommonProject.csproj "

¿Cuál es la mejor forma de solucionar este problema? Intenté agregar CommonProject a TeamCity como una dependencia, pero todavía no parece querer jugar a la pelota ...

Gracias

Tim

¿Fue útil?

Solución

Abordamos esto usando Externals en Subversion, que le permite extraer cosas de un repositorio diferente (parte del).

Luego, cuando estamos construyendo las soluciones, tenemos esos proyectos comunes agrupados en las mismas carpetas con la solución específica del proyecto, es decir, cuando revisamos las cosas tenemos:

Solution1
   +---Project1
   +---Project2
   +---Project3
   +---Common1
   +---Common2

Luego, por separado:

Solution2
   +---ProjectA
   +---ProjectB
   +---ProjectC
   +---Common1
   +---Common2

Debido a que tenemos los elementos externos y la estructura de directorios / carpetas configurados de esta manera, en teoría, debería poder pagar (o exportar) una " solución " a un directorio vacío y que se cree con éxito desde cero (sujeto a todas las herramientas necesarias que se están instalando) y, por lo tanto, TeamCity (o lo que sea su servidor de integración continua) también debería poder construirlo desde cero. De hecho, incluso antes de comenzar a usar TeamCity, tenía esto como política, pero el valor es más claro una vez que comience la integración continua.

El fragmento apropiado del Libro Rojo de Subversion está aquí: Definiciones externas

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top