Condividi tramite


Utilizzare aree di lavoro di compilazione

Durante il processo di compilazione, l'agente di compilazione compila ed esegue altre attività con i file di origine. Prima che l'agente di compilazione possa eseguire queste operazioni, scarica i file dalle cartelle presenti sul server di controllo della versione in una directory di lavoro locale. Per facilitare il download di questi file, l'agente di compilazione crea un'area di lavoro del controllo della versione che esegue il mapping delle cartelle sul server alle cartelle locali nella directory di lavoro dell'agente di compilazione.

Ruolo dell'area di lavoro della compilazione

Prima dell'avvio del processo di compilazione

Passaggio 1 Impostare la directory di lavoro per ogni agente di compilazione nel sistema di compilazione. Per ulteriori informazioni, vedere Creare e utilizzare agenti di compilazione.

Passaggio 2 Quando si crea la definizione di compilazione, nella scheda Area di lavoro vengono specificate le cartelle che contengono i file che si desidera scaricare e come deve essere eseguito il mapping di tali cartelle alle cartelle locali dell'agente di compilazione.

Durante il processo di compilazione

Passaggio 3 Il processo di compilazione passa le specifiche dell'area di lavoro all'attività del flusso di lavoro Attività CreateWorkspace per creare un'area di lavoro nella relativa cartella di lavoro.

Passaggio 4 Il processo di compilazione utilizza l'attività Attività DownloadFiles per scaricare i file nell'area di lavoro. Dopo questo passaggio, l'agente di compilazione può avviare il lavoro (ad esempio la compilazione) su questi file.

Progettare un'area di lavoro per la definizione di compilazione

Quando si progetta l'area di lavoro per la definizione di compilazione, è necessario seguire alcune procedure consigliate.

Includere tutte le cartelle necessarie.

Accertarsi di includere tutte le cartelle contenenti i file richiesti dal processo di compilazione. Ad esempio, se si aggiunge un'altra soluzione al campo Elementi da compilare nella scheda Processo, potrebbe essere necessario aggiungere un altro mapping all'area di lavoro.

Includere solo le cartelle necessarie.

Eseguire il mapping con un valore Stato impostato su Attivo solo delle cartelle necessarie per il processo di compilazione. Se in una sottocartella di una cartella mappata sono inclusi file non richiesti dal processo di compilazione, eseguirne il mapping con un valore Stato impostato su Mascherato. In molte situazioni, quando si crea una definizione di compilazione, viene eseguito il mapping della cartella radice del progetto team all'area di lavoro. In base a questa configurazione, l'agente di compilazione scarica tutti i file nella cartella del controllo della versione del progetto team. Se questa cartella contiene molti dati, è possibile che per la compilazione vengano sprecate risorse del sistema di compilazione e che venga rallentato il processo di compilazione a causa del download di grandi quantità di dati non necessari.

Quando si eliminano elementi dal campo Elementi da compilare nella scheda Processo, cercare i mapping che è possibile rimuovere dall'area di lavoro.

Utilizzare il token $ (SourceDir) per eseguire il mapping di una cartella del server in una cartella locale nella sottodirectory .. \Sources.

Nella maggior parte dei casi, il percorso migliore per i file di origine dell'agente di compilazione si trova nella sottodirectory ..\Sources della cartella di lavoro. È possibile specificare questo percorso tramite il token $(SourceDir) nella casella Cartella agente di compilazione.

Tenere presente come l'area di lavoro influisce su una definizione di compilazione attivata dalle archiviazioni.

Se l'opzione Trigger della definizione di compilazione è stata impostata su Integrazione continuata, Compilazioni in corso o Archiviazione gestita, le cartelle del server di cui si esegue il mapping vengono associate al processo di compilazione. Se, ad esempio, uno sviluppatore archivia le modifiche a una cartella mappata nell'area di lavoro di una definizione di compilazione con un trigger Archiviazione gestita, tali modifiche verranno bloccate fino al completamento del processo di compilazione.

Per ulteriori informazioni sui trigger, vedere Specificare trigger e motivi di compilazione.

Esempio di area di lavoro della definizione di compilazione

Roberto, il responsabile di compilazione, ha creato la definizione di compilazione Storefront Nightly.

Esempio di area di lavoro di una definizione di compilazione

Passaggio 1 Questa definizione di compilazione compila due soluzioni: $/Core/Controllers/Controllers.sln e $/Core/Viewers/Viewers.sln. Di conseguenza, è necessario eseguire il mapping delle due cartelle che contengono queste soluzioni, i progetti contenuti e tutti gli altri file necessari.

Passaggio 2 Per migliorare l'efficienza del processo di compilazione, Roberto esclude una cartella che contiene file di documentazione non richiesti dal proprio processo di compilazione: $/Core/Viewers/Docs.

Passaggio 3 Le soluzioni dipendono da alcuni binari in una libreria di componenti di un'altra società. Questi binari sono protetti da un meccanismo di tipo proprietario che ne richiede l'inserimento in una cartella fisica specifica: c:\adatum\widgets.

Copiare dati tra aree di lavoro

È possibile risparmiare tempo copiando i mapping da un'area di lavoro a un'altra.

Per copiare i mapping da una delle aree di lavoro

  1. Fare clic su Copia area di lavoro esistente.

  2. Nella finestra di dialogo Seleziona un'area di lavoro da copiare, copiare i mapping dall'area di lavoro.

Per copiare i mapping da un'altra area di lavoro della definizione di compilazione o dall'area di lavoro di un altro membro del team

  1. Effettuare uno dei passaggi indicati di seguito.

    • Per copiare i mapping da un'altra area di lavoro della definizione di compilazione, aprire la definizione di compilazione, quindi fare clic sulla scheda Area di lavoro.

    • Per copiare mapping dall'area di lavoro di un altro membro del team, chiedere al membro del team di scegliere Controllo del codice sorgente dal menu File, quindi fare clic su Aree di lavoro. Selezionare l'area di lavoro, quindi fare clic su Modifica.

  2. Fare clic con il pulsante destro del mouse su una riga della tabella Cartelle di lavoro, quindi scegliere Seleziona tutto.

  3. Fare clic con il pulsante destro del mouse su una riga della tabella Cartelle di lavoro, quindi scegliere Copia.

  4. Creare un file di testo, incollare il contenuto degli Appunti in tale file, quindi salvarlo.

  5. Creare una definizione di compilazione o modificare una definizione di compilazione esistente che corrisponde alla destinazione dei mapping di cui si sta effettuando la copia.

    Per ulteriori informazioni, vedere Creare una definizione di compilazione di base o Modificare una definizione di compilazione.

  6. Nella scheda Area di lavoro fare clic con il pulsante destro del mouse su una riga della tabella Cartelle di lavoro, quindi scegliere Incolla.

  7. A seconda delle esigenze, adattare i mapping da utilizzare tramite l'agente di compilazione. In particolare, assicurarsi che il valore della casella di Cartella agente di compilazione sia corretto e includere il token di $(SourceDir) in base alle esigenze.

Ulteriori informazioni

Si definisce l'area di lavoro dell'agente di compilazione quando si crea una definizione di compilazione. Per ulteriori informazioni, vedere Creare una definizione di compilazione di base.

Un'area di lavoro nell'agente di compilazione è fondamentalmente lo stesso meccanismo dell'area di lavoro del controllo della versione che uno sviluppatore utilizza per lavorare con i file di origine in un progetto team. È possibile copiare i mapping tra un'area di lavoro del controllo della versione e un'area di lavoro dell'agente di compilazione. Per ulteriori informazioni sulle aree di lavoro del controllo della versione, vedere Configurare il computer di sviluppo per l'utilizzo del progetto del team.

Cronologia delle modifiche

Data

Cronologia

Motivo

Maggio 2011

Argomento aggiunto.

Miglioramento delle informazioni.