Servizio locale di controllo versione
Parent page: Argomenti avanzati
L'installazione di Enterprise Server fornisce un controllo di versione localizzato (e centralizzato), grazie al suo servizio di Version Control. Questo servizio offre funzionalità di controllo di versione proprio dove servono, in locale, senza dover cercare o pagare software esterni per la gestione del VCS.
Definendo i repository di progettazione in questo modo centralizzato, un'organizzazione può controllare completamente a quali repository i propri progettisti possono accedere e che possono utilizzare.
Vantaggi principali
Ci sono due vantaggi principali nell'utilizzare questo servizio centralizzato di Version Control:
- Hai una gestione comune di utenti e diritti sia per Altium Designer sia per SVN. Quando accedi a Enterprise Server, il servizio di Version Control funziona con la tua sessione/le tue credenziali.
- I repository definiti tramite Enterprise Server (attraverso la pagina VCS (Admin – VCS) dell'interfaccia browser del Workspace di Enterprise Server) vengono popolati automaticamente in Altium Designer durante l'accesso, quindi gli utenti non devono preoccuparsi di URL, protocolli, password ecc. Viene semplicemente configurato una volta su Enterprise Server e condiviso con gli utenti previsti secondo necessità.
Creazione di repository
I repository possono essere creati tramite il servizio locale di Version Control (solo SVN), oppure è possibile collegarsi a repository esterni (SVN o Git). Insieme, tutti i repository sono gestiti centralmente tramite la pagina VCS (Admin – VCS) dell'interfaccia browser del Workspace, in termini di:
- Nome visualizzato, descrizione e percorso del repository.
- Accessibilità configurata – quali utenti specifici possono accedervi (o ruoli, nel caso di repository definiti tramite il servizio locale di Version Control).
- Disponibilità – aggiungerli o rimuoverli centralmente, invece di richiedere ai singoli progettisti di creare e collegarsi ai repository in modo indipendente.
Quando un utente di Altium Designer accede al Workspace, i Design Repository a lui disponibili verranno aggiunti automaticamente alla pagina Data Management – Design Repositories della finestra di dialogo Preferences. Tieni presente che l'elenco includerà anche eventuali repository "non gestiti" che sono stati aggiunti manualmente da questa pagina Preferences.
Definisci centralmente l'accesso ai Design Repository della tua organizzazione. I repository possono essere interni all'installazione di Enterprise Server, definiti utilizzando il servizio locale di Version Control, oppure esterni tramite l'SVN integrato di Altium Designer o servizi SVN o Git di terze parti. Il controllo degli accessi viene eseguito tramite la pagina VCS dell'interfaccia browser del Workspace. Quando un utente accede al Workspace, i Design Repository a lui disponibili verranno aggiunti automaticamente alla pagina Data Management – Design Repositories della finestra di dialogo Preferences .
Aggiunta di un repository
Per aggiungere un Design Repository, fai clic sul pulsante
, situato in alto a destra nella pagina. Verrà visualizzata la finestra Add Repository; usala per definire il repository.
Le proprietà richieste dipendono dal fatto che tu stia creando un nuovo repository utilizzando il servizio locale di Version Control oppure collegandoti a un repository esterno esistente:
- New – assegna al repository un nome e una descrizione.
- Existing – oltre a un nome e una descrizione, devi fornire il URL del repository e credenziali valide (User Name, Password) per accedere a quel repository (se richiesto).
Crea un nuovo Design Repository basato su SVN tramite il servizio locale di Version Control di Enterprise Server, oppure collegati a un repository esistente (SVN o Git) creato esternamente a Enterprise Server.
Un Design Repository esterno collegato si distingue nell'elenco dei repository per la proprietà External selezionata
Per modificare in un secondo momento le proprietà di un Design Repository, fai clic sul controllo Edit associato Per rimuovere un Design Repository, fai clic sul controllo Remove associato
Condivisione di un repository
Dopo aver centralizzato i tuoi Design Repository, devi assicurarti che chi necessita di accedere a un determinato repository – inclusi i progettisti che lavoreranno ai progetti di schede – disponga di tale accesso. Questo si ottiene condividendo quel repository, o più precisamente gestendone i permessi di accesso. Per farlo, fai clic sul controllo Share associato al repository
Verrà visualizzata la finestra Manage Permissions, con tutti i controlli necessari per condividere il repository con altri utenti.
Con i Design Repository organizzati centralmente, la condivisione con altri consiste semplicemente nella gestione dei permessi di ciascun repository.
Aspetti da tenere presenti:
- Per un repository locale creato tramite il servizio di Version Control di Enterprise Server (cioè non esterno), i permessi predefiniti condividono quel repository con l'utente che lo ha creato e con il ruolo Administrators. Entrambi dispongono di accesso completo in lettura/scrittura.
- Per un repository esterno, per impostazione predefinita non è condiviso con nessuno – nemmeno con l'utente che ha aggiunto la connessione tramite l'interfaccia.
- Solo i repository locali (non esterni) possono essere condivisi con gruppi di ruoli definiti per Enterprise Server o pubblicamente. I ruoli sono elencati dopo i singoli utenti.
- In termini di permessi, un utente/ruolo ha accesso in lettura/scrittura quando l'opzione Can Write è abilitata Se questa opzione è disabilitata, ha accesso in sola lettura.
- Per rimuovere un utente/ruolo esistente dall'accesso condiviso a un repository, fai clic sul controllo Remove associato
Sharing a Local Repository with a Workspace User
Per condividere un repository locale (non esterno) con un altro utente del Workspace:
- Fai clic sul controllo Add User nella finestra Manage Permissions.

- Nella finestra Add Users visualizzata, inizia a digitare il nome completo, il nome utente o l'indirizzo email di un utente del Workspace nel campo Select Users to be added, per visualizzare un elenco a comparsa degli utenti corrispondenti. Seleziona l'utente richiesto da questo elenco. È possibile scegliere più utenti. Per rimuovere un utente, fai clic sulla croce di eliminazione a destra del suo nome.

- Imposta il permesso per l'utente/gli utenti utilizzando il campo Permission. Usa il menu a discesa per scegliere tra accesso Read o accesso Read/Write.

- Fai clic sul pulsante
per confermare l'aggiunta dell'utente/degli utenti e tornare alla finestra Manage Permissions.

- Fai clic sul pulsante
nella finestra Manage Permissions.
Condivisione di un repository locale con un gruppo di ruoli definito
Se il repository è stato creato tramite il servizio locale di Version Control, anziché come repository esterno, è anche possibile condividerlo con i gruppi di ruoli definiti per il Workspace. Per condividere un repository locale (non esterno) con un altro gruppo di ruoli:
- Fare clic sul controllo Add Group nella finestra Manage Permissions.

- Nella finestra Add Groups visualizzata, iniziare a digitare il nome di un gruppo di ruoli nel campo Select Groups to be added per visualizzare un elenco di ruoli corrispondenti. Selezionare il ruolo richiesto da questo elenco. È possibile scegliere più ruoli. Per rimuovere un ruolo, fare clic sulla croce di eliminazione a destra del relativo nome.

- Impostare l'autorizzazione per il gruppo o i gruppi di ruoli utilizzando il campo Permission. Usare il menu a discesa per scegliere tra accesso Read oppure accesso Read/Write.

- Fare clic sul pulsante
per confermare l'aggiunta del ruolo o dei ruoli e tornare alla finestra Manage Permissions.

- Fare clic sul pulsante
nella finestra Manage Permissions.
Condivisione di un repository locale con tutti gli utenti
Se il repository è stato creato tramite il servizio locale di Version Control, anziché come repository esterno, è anche possibile condividere tale repository con tutti gli utenti del Workspace. Per condividere un repository locale (non esterno) con chiunque possa accedere al Workspace:
- Fare clic sul controllo Add Anyone nella finestra Manage Permissions.

- La voce Anyone verrà aggiunta direttamente all'elenco delle entità condivise e condivisa automaticamente con accesso in lettura/scrittura.

- Fare clic sul pulsante
nella finestra Manage Permissions.
Condivisione di un repository esterno con un utente del Workspace
Per condividere un repository esterno con un utente del Workspace:
- Fare clic sul controllo Add User nella finestra Manage Permissions.

- Nella finestra Add Users visualizzata, iniziare a digitare il nome completo, il nome utente o l'indirizzo email di un utente del Workspace nel campo Select Users to be added per visualizzare un elenco di utenti corrispondenti. Selezionare l'utente richiesto da questo elenco. Per rimuovere l'utente, fare clic sulla croce di eliminazione a destra del relativo nome.
Nel campo SVN User, immettere un nome registrato nel repository esterno (SVN o Git) e che quindi disponga dell'accesso. In genere, si tratterà del nome corrispondente dell'utente registrato nel repository

- Fare clic sul pulsante
per confermare l'aggiunta dell'utente e tornare alla finestra Manage Permissions. Fare clic su Add User per aggiungere altri utenti come descritto al passaggio 2 sopra. Si noti che, nella seconda immagine di esempio qui sotto, l'utente Barryè stato impostato per usare il nome del repository corrispondenteBarrySmith, anziché il nome generaleServerAdmin.

- Fare clic sul pulsante
nella finestra Manage Permissions.
Accesso esterno a un repository di progettazione SVN locale
Un Design Repository creato tramite il servizio locale di Version Control dell'Enterprise Server può essere accessibile usando un client SVN come TortoiseSVN. L'accesso avviene usando il normale protocollo di rete (attualmente è supportato svn://). L'indirizzo corretto del repository può essere consultato/copiato da due posizioni:
- La pagina VCS dell'interfaccia browser del Workspace – nel campo Repository Path del repository di destinazione.
Un repository "interno" creato dall'Enterprise Server mostrerà il proprio percorso di indirizzo relativo all'Enterprise Server, che corrisponde all'indirizzo localhost del PC host.
- Da Altium Designer, dalla pagina Data Management – Design Repositories page della finestra di dialogo Preferences – nel campo Repository del repository di destinazione.
Dal punto di vista di Altium Designer, o di qualsiasi applicazione non eseguita sul PC host dell'Enterprise Server, i percorsi di indirizzo del repository si basano sul nome dei rispettivi PC host.
Usare l'indirizzo ottenuto nella funzione di esplorazione repository del client Subversion. Al primo accesso si aprirà una finestra di dialogo intermedia Authentication che richiederà credenziali di connessione valide. Immettere il nome e la password di un account utente del Workspace per procedere. Queste credenziali sono valide se:
- L'account utente è stato aggiunto after il repository è stato creato nell'Enterprise Server. Gli utenti applicati ai repository creati possono essere visualizzati nel file
passwdpresente nella cartella\ProgramData\Altium\Altium365Data\Repositorydel PC dell'Enterprise Server – vedere sotto. - Il repository è stato condiviso con l'account utente, aggiungendo quel nome utente tramite il comando Add User nella finestra Manage Permissions for <repository name> del server. Ciò è evidente nel file
authzdel repository, presente nella cartella\ProgramData\Altium\Altium365Data\Repositorydel PC dell'Enterprise Server.
Esplorazione del contenuto di un Design Repository creato tramite il servizio locale di Version Control basato su SVN dell'installazione di Enterprise Server.
Sincronizzazione utenti Enterprise Server & VCS
Quando viene creato un nuovo utente per il Workspace, le credenziali definite (User Name e Password) per tale utente vengono memorizzate sia nel database dell'Enterprise Server sia nel servizio di Version Control, poiché quest'ultimo non può accedere direttamente alla password dal primo. La password viene memorizzata nel servizio di Version Control in formato testo semplice (nel file \ProgramData\Altium\Altium365Data\Repository\passwd).
Le voci in questo elenco forniscono accesso al repository SVN dell'Enterprise Server quando si lavora con il servizio tramite Altium Designer. Possono verificarsi casi in cui le credenziali di un utente non siano incluse nel file, ad esempio quando gli utenti del Workspace esistono già al momento della creazione del primo repository SVN (anziché il contrario). Questo problema può essere risolto aggiungendo manualmente tali combinazioni nome/password al file passwd, oppure reinserendo la password per ciascun profilo utente nel Workspace; quest'ultimo approccio popolerà di conseguenza il file passwd, senza richiedere accesso diretto al PC dell'Enterprise Server.
In un'installazione predefinita di Enterprise Server, le credenziali utente per il servizio di Version Control sono memorizzate nel file associato Passwd.
Eliminazione di un repository
Per eliminare un repository dal servizio di Version Control dell'Enterprise Server, fare clic sul controllo Remove associato a quel repository, nella pagina VCS dell'interfaccia browser del Workspace.
Le voci dei repository esterni possono essere eliminate indipendentemente dal fatto che il repository contenga o meno progetti. I repository locali, invece (quelli creati internamente tramite il servizio di Version Control dell'Enterprise Server), non possono essere eliminati se contengono uno o più progetti. Verrà visualizzato un avviso in merito e sarà necessario rimuovere prima i progetti per poter procedere con l'eliminazione.
Anche in tal caso, se un repository locale non contiene progetti, non verrà effettivamente eliminato, ma spostato in una directory di archivio (\ProgramData\Altium\Altium365Data\RepositoryDumps, per un'installazione predefinita di Enterprise Server). Il repository sarà contenuto in un file Dump, con un prefisso Unique ID (ad esempio 775f6c22-b9a1-468c-9f1f-4f217bb3be6b_central design repository.dump).