Condividi tramite


Comando Lock

Aggiornamento: novembre 2007

Blocca o sblocca un file o una cartella per negare o concedere nuovamente agli utenti il diritto di estrarre un elemento e modificarlo in un'area di lavoro diversa oppure di archiviare le modifiche in sospeso di un elemento da un'area di lavoro diversa.

Autorizzazioni necessarie

Per utilizzare il comando lock, è necessario disporre dell'autorizzazione Blocco impostata su Consenti. L'impostazione dell'autorizzazione Sblocca modifiche di altri utenti su Consenti è necessaria per rimuovere un blocco utilizzato da un altro utente se non si dispone dell'autorizzazione di Scrittura per l'area di lavoro di tale utente. Per ulteriori informazioni, vedere Autorizzazioni per Team Foundation Server.

tf lock itemspec /lock:(none|checkout|checkin) 
[/workspace:workspacename] [/server:servername] [/recursive]

Parametri

Argomento

Descrizione

itemspec

Identifica il file o la cartella da bloccare o sbloccare. Per ulteriori informazioni sul tipo di analisi eseguito da Team Foundation sui parametri itemspec per determinare gli elementi all'interno dell'ambito, vedere Opzioni della riga di comando.

workspacename

Valore fornito dall'utente per l'opzione /workspace.

servername

Valore fornito dall'utente per l'opzione /server. Esempio: http://teamfoundation2:8080/.

Opzione

Descrizione

/lock

Specifica un tipo di blocco o rimuove un blocco da un elemento. Per ulteriori informazioni, vedere Informazioni sui tipi di blocco.

Opzioni di blocco:

  • None

    Rimuove un blocco da un elemento.

  • Checkin

    Consente di estrarre un elemento e di modificarlo in tutte le aree di lavoro, ma impedisce agli utenti di archiviare le modifiche apportate all'elemento all'esterno dell'opzione /workspace specificata fino al rilascio esplicito del blocco di archiviazione. Se l'elemento specificato è bloccato in qualsiasi altra area di lavoro, l'operazione di blocco non viene eseguita.

  • Checkout

    Impedisce agli utenti di archiviare o estrarre gli elementi specificati fino al rilascio esplicito del blocco. Se gli utenti hanno bloccato uno qualsiasi degli elementi specificati oppure se sono disponibili modifiche in sospeso per uno qualsiasi degli elementi specificati, l'operazione di blocco non viene eseguita.

/workspace

Specifica il nome di un'area di lavoro diversa nel quale applicare il blocco. Per impostazione predefinita, il blocco è applicato nell'area di lavoro corrente.

/server

Indica l'URL del server Controllo della versione di Team Foundation in cui lavorare. Questa opzione è necessaria se il comando viene richiamato da una directory che non è mappata a un'area di lavoro.

Note

Utilizzare il comando lock per bloccare temporaneamente la versione di un elemento disponibile nel server Controllo della versione di Team Foundation e archiviare una modifica in sospeso senza dover risolvere eventuali conflitti di unione. Se si desidera impedire in modo definitivo l'accesso a un elemento disponibile nel server Controllo della versione di Team Foundation, è invece necessario utilizzare il Comando Permission.

Nota:

Se possibile, a titolo di cortesia, informare i colleghi del team quando si applica un blocco a un elemento, spiegandone i motivi e fornendo una stima dei tempi di rimozione del blocco.

Per ulteriori informazioni su come accedere all'utilità della riga di comando tf, vedere Comandi dell'utilità della riga di comando Tf.

Blocco di un elemento

Per bloccare un elemento, è possibile utilizzare il comando lock oppure specificare un'opzione di blocco durante il commit di diversi altri comandi dell'utilità della riga di comando tf, tra cui:

Se si utilizzano i comandi Add e Branch, il blocco verrà applicato allo spazio dei nomi in cui verrà creato il nuovo elemento. Se si utilizza il comando Rename, i blocchi verranno applicati sia al vecchio che al nuovo spazio dei nomi. Per ulteriori informazioni, vedere Procedura: bloccare e sbloccare cartelle o file.

Tipi di blocchi

In Team Foundation vengono forniti due tipi di blocchi: checkin e checkout.

Un blocco check-in è meno restrittivo di un blocco check-out. Quando si applica un blocco check-in, gli utenti possono continuare ad apportare modifiche locali all'elemento in altre aree di lavoro. Non è tuttavia possibile archiviare le modifiche fino a quando non si rimuove esplicitamente il blocco check-in dall'area di lavoro.

Un blocco check-out è più restrittivo di un blocco check-in. Quando si applica un blocco check-out a un file o a una cartella inclusa nel controllo della versione, gli utenti non possono estrarre il file per modificarlo né archiviare modifiche in sospeso preesistenti. Non è possibile acquisire un blocco check-out se per un elemento sono attualmente disponibili modifiche in sospeso.

Per ulteriori informazioni sui casi in cui applicare i blocchi check-out e check-in, vedere Informazioni sui tipi di blocco.

Funzionamento dei blocchi

Se un file è estratto quando viene bloccato, il relativo stato viene modificato in modo da includere il nuovo tipo di blocco. Se i file non sono estratti, viene aggiunta una modifica di tipo blocco all'insieme di modifiche in sospeso dell'area di lavoro. A differenza del comando checkout , il comando lock non consente di rendere un file automaticamente modificabile.

I blocchi sulle cartelle sono ricorsivi in modo implicito. Se si blocca una cartella, non è necessario bloccare i file in essa contenuti a meno che non si desideri applicare il blocco check-out più restrittivo a un file della cartella alla quale è stato applicato il blocco check-in.

Sblocco di un elemento

Per sbloccare un elemento bloccato, è possibile utilizzare l'opzione none . In Team Foundation un elemento viene inoltre bloccato automaticamente quando si archiviano modifiche in sospeso nell'area di lavoro.

Per determinare quali file sono bloccati nel server Controllo della versione di Team Foundation e chi ha applicato il blocco, è possibile utilizzare il Comando Status.

Esempi

L'esempio riportato di seguito impedisce ad altri utenti di estrarre il file 314.cs.

c:\projects>tf lock /lock:checkout 314.cs

L'esempio riportato di seguito impedisce ad altri utenti di archiviare le modifiche nel file 1256.cs, ma di consente di estrarre tale file nelle relative aree di lavoro.

c:\projects>tf lock /lock:checkin 1256.cs

L'esempio riportato di seguito impedisce ad altri utenti di apportare modifiche in sospeso agli eventuali elementi presenti nella cartella src/ del server Controllo della versione di Team Foundation.

c:\projects>tf lock /lock:checkout $/src

L'esempio riportato di seguito consente di sbloccare e rendere tutti i file presenti nella cartella src/ del server Controllo della versione di Team Foundation disponibili per l'estrazione e l'archiviazione da parte di altri utenti.

c:\projects>tf lock /lock:none src/

Vedere anche

Concetti

Informazioni sui tipi di blocco

Utilizzo delle aree di lavoro per il controllo della versione

Riferimenti

Sintassi della riga di comando (Team System)

Comandi Checkout ed Edit

Comando Status

Altre risorse

Comandi dell'utilità della riga di comando Tf

Utilizzo dei blocchi del controllo della versione