Domanda

Sono nuovo di TeamCity e abbiamo un certo numero di progetti comuni sotto il controllo del codice sorgente a cui si fa riferimento direttamente all'interno di progetti pertinenti, ad esempio:

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

Di conseguenza, il riferimento a " CommonProject.csproj " in " ProjectX.sln " è qualcosa sulla falsariga di .... \ Common \ trunk \ CommonProject \ CommonProject.csproj che va bene nei nostri ambienti di sviluppo ma quando si tratta di TeamCity cade dicendo che non riesce a trovare il percorso & ...; \ Common \ tronco \ CommonProject \ CommonProject.csproj "

Qual è il modo migliore per aggirare questo problema? Ho provato ad aggiungere CommonProject a TeamCity come dipendenza ma non sembra ancora voler giocare a palla ...

Grazie

Tim

È stato utile?

Soluzione

Ci occupiamo di questo usando Externals in Subversion che ti permette di estrarre cose da un repository diverso (bit del).

Quindi, quando stiamo costruendo le soluzioni, abbiamo quei progetti comuni raggruppati nelle stesse cartelle con una soluzione specifica per un progetto - cioè quando controlliamo le cose abbiamo:

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

Quindi, separatamente:

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

Poiché abbiamo gli esterni e la struttura di directory / cartelle configurati in questo modo, in teoria dovresti essere in grado di effettuare il checkout (o l'esportazione) di una soluzione "quotata"; in una directory vuota e costruirla con successo da zero (soggetto a tutti gli strumenti necessari che vengono installati) e quindi TeamCity (o qualunque sia il tuo server di integrazione continua) dovrebbe essere in grado di costruirla anche da zero. In effetti anche prima di iniziare a utilizzare TeamCity avevo questa politica, ma il valore è più chiaro quando inizi a fare l'integrazione continua.

Il bit appropriato del libro rosso Subversion è qui: Definizioni esterne

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top