Serviço Local de Controlo de Versões
Parent page: Tópicos Avançados
A instalação do Enterprise Server disponibiliza controlo de versões localizado (e centralizado), através do seu serviço de Version Control. Este serviço oferece capacidades de controlo de versões exatamente onde delas precisa, localmente, sem ter de procurar ou pagar por software externo de gestão de VCS.
Ao definir repositórios de design de forma centralizada, uma organização pode controlar totalmente a que repositórios os seus designers podem aceder e utilizar.
Principais Vantagens
Existem duas vantagens principais na utilização deste serviço centralizado de Version Control:
- Dispõe de utilizadores e gestão de permissões comuns tanto para o Altium Designer como para o SVN. Quando inicia sessão no Enterprise Server, o serviço de Version Control funciona com a sua sessão/credenciais.
- Os repositórios definidos através do Enterprise Server (através da página VCS (Admin – VCS) da interface baseada em browser do Workspace do Enterprise Server) são automaticamente disponibilizados no Altium Designer durante o início de sessão, pelo que os utilizadores não têm de se preocupar com URLs, protocolos, palavra-passe, etc. É simplesmente configurado uma vez no Enterprise Server e partilhado com os utilizadores pretendidos, conforme necessário.
Criação de Repositórios
Os repositórios podem ser criados através do serviço local de Version Control (apenas SVN), ou podem ser ligadas fontes externas de repositórios (SVN ou Git). Em conjunto, todos os repositórios são geridos centralmente através da página VCS (Admin – VCS) da interface baseada em browser do Workspace, em termos de:
- O nome apresentado, a descrição e o caminho do repositório.
- A acessibilidade configurada – que utilizadores específicos lhes podem aceder (ou funções, no caso de repositórios definidos através do serviço local de Version Control).
- A sua disponibilidade – adicioná-los ou removê-los centralmente, em vez de cada designer ter de criar e ligar-se a repositórios de forma independente.
Quando um utilizador do Altium Designer inicia sessão no Workspace, os Design Repositories disponíveis para esse utilizador serão automaticamente adicionados à página Data Management – Design Repositories da caixa de diálogo Preferences. Note que a lista também incluirá quaisquer repositórios “não geridos” que tenham sido adicionados manualmente a partir desta página Preferences.
Defina centralmente o acesso aos Design Repositories da sua organização. Os repositórios podem ser internos à instalação do Enterprise Server, definidos utilizando o serviço local de Version Control, ou externos através do SVN incorporado no Altium Designer, ou de um serviço SVN ou Git de terceiros. O controlo de acesso é realizado através da página VCS da interface baseada em browser do Workspace. Quando um utilizador inicia sessão no Workspace, os Design Repositories disponíveis para esse utilizador serão automaticamente adicionados à página Data Management – Design Repositories da caixa de diálogo Preferences .
Adicionar um Repositório
Para adicionar um Design Repository, clique no botão
, localizado no canto superior direito da página. Surgirá a janela Add Repository; utilize-a para definir o repositório.
As propriedades necessárias dependem de estar a criar um novo repositório utilizando o serviço local de Version Control, ou de estar a associar um repositório externo existente:
- New – atribua um nome e uma descrição ao repositório.
- Existing – para além de um nome e descrição, tem de fornecer o URL para o repositório, e credenciais válidas (User Name, Password) para aceder a esse repositório (se necessário).
Crie um novo Design Repository baseado em SVN através do serviço local de Version Control do Enterprise Server, ou associe um repositório existente (SVN ou Git) que tenha sido criado externamente ao Enterprise Server.
Um Design Repository externo associado distingue-se na lista de repositórios pela propriedade External assinalada
Para editar as propriedades de um Design Repository numa fase posterior, clique no respetivo controlo Edit Para remover um Design Repository, clique no respetivo controlo Remove
Partilhar um Repositório
Tendo centralizado os seus Design Repositories, precisa de garantir que aqueles que necessitam de acesso a um determinado repositório – incluindo os designers que irão trabalhar nos designs de placas – dispõem desse acesso. Isto é conseguido através da partilha desse repositório, ou melhor, da gestão das respetivas permissões de acesso. Para o fazer, clique no controlo Share associado ao repositório
Surgirá a janela Manage Permissions, com todos os controlos necessários para partilhar o repositório com outros utilizadores.
Com os Design Repositories organizados centralmente, partilhá-los com outras pessoas resume-se simplesmente a gerir as permissões de cada repositório.
Aspetos a ter em conta:
- Para um repositório local criado através do serviço de Version Control do Enterprise Server (isto é, não externo), as permissões predefinidas partilham esse repositório com o utilizador que o criou, e com a função Administrators. Ambos têm acesso total de Leitura/Escrita.
- Para um repositório externo, este não é partilhado com ninguém por predefinição – nem sequer com o utilizador que adicionou a ligação ao mesmo através da interface.
- Apenas os repositórios locais (não externos) podem ser partilhados com grupos de funções definidos para o Enterprise Server, ou publicamente. As funções são listadas a seguir aos utilizadores individuais.
- Em termos de permissões, um utilizador/função tem acesso de Leitura/Escrita quando a opção Can Write está ativada Se esta opção estiver desativada, terá apenas acesso de Leitura.
- Para remover um utilizador/função existente do acesso partilhado a um repositório, clique no controlo Remove associado
Sharing a Local Repository with a Workspace User
Para partilhar um repositório local (não externo) com outro utilizador do Workspace:
- Clique no controlo Add User na janela Manage Permissions.

- Na janela Add Users que surgir, comece a escrever o nome completo, nome de utilizador ou endereço de email de um utilizador do Workspace no campo Select Users to be added, para fazer aparecer uma lista de utilizadores correspondentes. Selecione o utilizador pretendido nessa lista. Podem ser escolhidos vários utilizadores. Para remover um utilizador, clique na cruz de eliminação, à direita do respetivo nome.

- Defina a permissão para o(s) utilizador(es) utilizando o campo Permission. Utilize a lista pendente para escolher entre acesso Read ou acesso Read/Write.

- Clique no botão
para confirmar a adição do(s) utilizador(es) e regressar à janela Manage Permissions.

- Clique no botão
na janela Manage Permissions.
Sharing a Local Repository with a defined Role Group
Se o repositório tiver sido criado através do serviço local de Controlo de Versões, em vez de um repositório externo, então também tem a possibilidade de o partilhar com grupos de Funções definidos para o seu Workspace. Para partilhar um repositório local (não externo) com outro grupo de funções:
- Clique no controlo Add Group na janela Manage Permissions.

- Na janela Add Groups que aparece, comece a escrever o nome de um grupo de funções no campo Select Groups to be added, para fazer surgir uma lista de funções correspondentes. Selecione a função pretendida a partir desta lista. Podem ser escolhidas várias funções. Para remover uma função, clique na cruz de eliminação, à direita do respetivo nome.

- Defina a permissão para o(s) grupo(s) de funções através do campo Permission. Utilize a lista pendente para escolher entre acesso Read ou acesso Read/Write.

- Clique no botão
para confirmar a(s) adição(ões) da(s) função(ões) e regressar à janela Manage Permissions.

- Clique no botão
na janela Manage Permissions.
Sharing a Local Repository with All Users
Se o repositório tiver sido criado através do serviço local de Controlo de Versões, em vez de um repositório externo, então também tem a possibilidade de partilhar esse repositório com todos os utilizadores do Workspace. Para partilhar um repositório local (não externo) com qualquer pessoa que possa iniciar sessão no Workspace:
- Clique no controlo Add Anyone na janela Manage Permissions.

- A entrada Anyone será adicionada diretamente à lista de entidades partilhadas e ficará automaticamente partilhada com acesso de Leitura/Escrita.

- Clique no botão
na janela Manage Permissions.
Sharing an External Repository with a Workspace User
Para partilhar um repositório externo com um utilizador do Workspace:
- Clique no controlo Add User na janela Manage Permissions.

- Na janela Add Users que aparece, comece a escrever o nome completo, nome de utilizador ou endereço de email de um utilizador do Workspace no campo Select Users to be added, para fazer surgir uma lista de utilizadores correspondentes. Selecione o utilizador pretendido a partir desta lista. Para remover o utilizador, clique na cruz de eliminação, à direita do respetivo nome.
No campo SVN User, introduza um nome que esteja registado no repositório externo (SVN ou Git) e que, por isso, tenha acesso. Normalmente, este será o nome correspondente de um utilizador registado no repositório

- Clique no botão
para confirmar a adição do utilizador e regressar à janela Manage Permissions. Clique em Add User para adicionar mais utilizadores, conforme descrito no passo 2 acima. Note que, na segunda imagem de exemplo abaixo, o utilizador Barryfoi definido para utilizar o seu nome correspondente no repositórioBarrySmith, em vez do nome geralServerAdmin.

- Clique no botão
na janela Manage Permissions.
Acesso Externo a um Repositório de Design SVN Local
Um Repositório de Design criado através do serviço local de Controlo de Versões do Enterprise Server pode ser acedido utilizando um cliente SVN, como o TortoiseSVN. O acesso é feito utilizando o protocolo de rede normal (o svn:// é atualmente suportado). O endereço correto do repositório pode ser acedido/copiado a partir de dois locais:
- A página VCS da interface do browser do Workspace – no campo Repository Path do repositório de destino.
Um repositório “interno” criado a partir do Enterprise Server mostrará o seu caminho de endereço relativo ao Enterprise Server, que é o endereço localhost do PC anfitrião.
- No Altium Designer, a partir da página Data Management – Design Repositories page da caixa de diálogo Preferences – no campo Repository do repositório de destino.
Na perspetiva do Altium Designer – ou de qualquer aplicação que não esteja no PC anfitrião do Enterprise Server – os caminhos de endereço do repositório baseiam-se no nome dos respetivos PCs anfitriões.
Utilize o endereço obtido na funcionalidade de navegação do repositório do seu cliente Subversion. No primeiro acesso, abrir-se-á uma caixa de diálogo intermédia Authentication a solicitar credenciais de ligação válidas. Introduza o nome e a palavra-passe de uma conta de utilizador do Workspace para prosseguir. Estas credenciais são válidas se:
- A conta de utilizador tiver sido adicionada after de o repositório ser criado no Enterprise Server. Os utilizadores aplicáveis aos repositórios criados podem ser vistos no ficheiro
passwd, encontrado na pasta\ProgramData\Altium\Altium365Data\Repositorydo PC do Enterprise Server – ver abaixo. - O repositório tiver sido partilhado com a conta de utilizador, adicionando esse nome de utilizador através do comando Add User na janela Manage Permissions for <repository name> do servidor. Isto é visível no ficheiro
authzdo repositório, localizado na pasta\ProgramData\Altium\Altium365Data\Repositorydo PC do Enterprise Server.
Navegação no conteúdo de um Repositório de Design criado através do serviço local de Controlo de Versões baseado em SVN da instalação do Enterprise Server.
Sincronização de Utilizadores do Enterprise Server & VCS
Quando é criado um novo utilizador para o Workspace, as credenciais definidas (User Name e Password) para esse utilizador são armazenadas tanto na base de dados do Enterprise Server como no serviço de Controlo de Versões, uma vez que este último não consegue aceder diretamente à palavra-passe do primeiro. A palavra-passe é armazenada no serviço de Controlo de Versões em formato de texto simples (no ficheiro \ProgramData\Altium\Altium365Data\Repository\passwd).
As entradas desta lista fornecem acesso ao repositório SVN do Enterprise Server quando se trabalha com o serviço através do Altium Designer. Pode haver situações em que as credenciais de um utilizador não estejam incluídas no ficheiro, por exemplo quando já existem utilizadores do Workspace no momento em que o primeiro repositório SVN é criado (em vez do contrário). Isto pode ser resolvido adicionando manualmente essas combinações de nome/palavra-passe ao ficheiro passwd, ou voltando a introduzir a palavra-passe de cada perfil de utilizador no Workspace – esta última abordagem preencherá o ficheiro passwd em conformidade, sem exigir acesso direto ao PC do Enterprise Server.
Numa instalação predefinida do Enterprise Server, as credenciais de utilizador são armazenadas para o serviço de Controlo de Versões no ficheiro Passwd associado.
Eliminar um Repositório
Para eliminar um repositório do serviço de Controlo de Versões do Enterprise Server, clique no controlo Remove associado a esse repositório, na página VCS da interface baseada em browser do Workspace.
As entradas de repositórios externos podem ser eliminadas, independentemente de o repositório conter ou não projetos. Por outro lado, os repositórios locais (os criados internamente através do serviço de Controlo de Versões do Enterprise Server) não podem ser eliminados se contiverem um ou mais projetos. Será alertado para esse facto e deverá remover primeiro os projetos antes de poder prosseguir com a eliminação.
Mesmo assim, se um repositório local não tiver projetos, na realidade não será eliminado, mas sim movido para um diretório de arquivo (\ProgramData\Altium\Altium365Data\RepositoryDumps, para uma instalação predefinida do Enterprise Server). O repositório ficará contido num ficheiro Dump, com um prefixo de ID Único (por exemplo 775f6c22-b9a1-468c-9f1f-4f217bb3be6b_central design repository.dump).