Parent page: Tematy zaawansowane
Instalacja Enterprise Server zapewnia lokalną (i scentralizowaną) kontrolę wersji dzięki usłudze Version Control. Usługa ta udostępnia możliwości kontroli wersji dokładnie tam, gdzie są potrzebne — lokalnie — bez konieczności szukania lub opłacania zewnętrznego oprogramowania do zarządzania VCS.
Dzięki definiowaniu repozytoriów projektowych w ten scentralizowany sposób organizacja może w pełni kontrolować, do których repozytoriów jej projektanci mają dostęp i z których mogą korzystać.
Relevance of the information on this page:
Nowa instalacja Enterprise Server udostępnia jedno repozytorium projektowe oparte na Git, przeznaczone do przechowywania wszystkich projektów projektowych Workspace — i to wszystko! Pozwala to uniknąć konfiguracji i złożoności związanej z lokalną usługą Version Control w Enterprise Server. Masz jedno repozytorium projektowe – Versioned Storage – do którego wszyscy projektanci mają dostęp i do którego mogą publikować wydania. W związku z tym strona VCS w interfejsie przeglądarkowym Workspace staje się wyłącznie informacyjna — nie można dodać nowego repozytorium, a jedynego repozytorium Git nie można w żaden sposób modyfikować ani usunąć. Informacje na tej stronie zatem Cię nie dotyczą.
Jeśli uaktualniłeś Enterprise Server z Altium Vault 3.0, włączona będzie również obsługa repozytoriów SVN, aby można było kontynuować dotychczasowy (i ugruntowany) przepływ pracy. W takim przypadku możesz nadal tworzyć repozytoria za pomocą lokalnej usługi Version Control (tylko SVN) lub łączyć się z repozytoriami zewnętrznymi (SVN lub Git). Informacje na tej stronie pozostają więc dla Ciebie istotne.
Important: Zwróć uwagę, że w przeciwnym razie przycisk
będzie wyszarzony, a możliwość tworzenia/dodawania repozytoriów będzie niedostępna.
Kluczowe zalety
Istnieją dwie kluczowe zalety korzystania z tej scentralizowanej usługi Version Control:
- Masz wspólnych użytkowników i zarządzanie uprawnieniami zarówno dla Altium Designer, jak i SVN. Gdy logujesz się do Enterprise Server, usługa Version Control działa w oparciu o Twoją sesję/poświadczenia.
- Repozytoria zdefiniowane w Enterprise Server (na stronie VCS (Admin – VCS) w przeglądarkowym interfejsie Workspace w Enterprise Server) są automatycznie udostępniane w Altium Designer podczas logowania, dzięki czemu użytkownicy nie muszą martwić się o adresy URL, protokoły, hasła itp. Konfigurujesz to tylko raz — na Enterprise Server — i udostępniasz wskazanym użytkownikom zgodnie z potrzebą.
Gdy tworzony jest nowy użytkownik Enterprise Server, zdefiniowane dla niego Password jest zapisywane zarówno w Enterprise Server, jak i w usłudze SVN, ponieważ ta druga nie może bezpośrednio uzyskać dostępu do hasła z tej pierwszej.
Tworzenie repozytorium
Repozytoria można tworzyć za pomocą lokalnej usługi Version Control (tylko SVN) lub można podłączać repozytoria zewnętrzne (SVN lub Git). Łącznie wszystkie repozytoria są centralnie zarządzane na stronie VCS (Admin – VCS) w przeglądarkowym interfejsie Workspace w zakresie:
- Wyświetlanej nazwy, opisu i ścieżki repozytorium.
- Skonfigurowanej dostępności — którzy konkretni użytkownicy mogą mieć do nich dostęp (lub role w przypadku repozytoriów zdefiniowanych przez lokalną usługę Version Control).
- Dostępności operacyjnej — dodawania lub usuwania ich centralnie, zamiast tego, by poszczególni projektanci musieli niezależnie tworzyć i podłączać repozytoria.
Domyślnie dostępne są dwa repozytoria projektowe, dostarczane przez lokalną usługę Version Control i nazwane odpowiednio DefaultRepository (repozytorium SVN) oraz Versioned Storage (repozytorium Git). Repozytorium DefaultRepository nie może zostać przemianowane, ale możesz dodać do niego opis, zarządzać dostępem użytkowników lub usunąć je — w razie potrzeby. Repozytorium Versioned Storage, które służy wyłącznie do zintegrowanego przechowywania projektów Workspace, nie może zostać przemianowane, udostępnione ani usunięte.
Gdy użytkownik Altium Designer zaloguje się do Workspace, dostępne dla niego repozytoria projektowe zostaną automatycznie dodane na stronę Data Management – Design Repositories page w oknie dialogowym Preferences. Zwróć uwagę, że lista będzie również zawierać wszelkie repozytoria „niezarządzane”, które zostały ręcznie dodane z tej strony Preferences.
Centralnie zdefiniuj dostęp do repozytoriów projektowych w organizacji. Repozytoria mogą być wewnętrzne dla instalacji Enterprise Server, zdefiniowane przy użyciu lokalnej usługi Version Control, lub zewnętrzne — poprzez wbudowaną w Altium Designer obsługę SVN albo usługi SVN lub Git firm trzecich. Kontrola dostępu jest realizowana na stronie VCS w przeglądarkowym interfejsie Workspace. Gdy użytkownik zaloguje się do Workspace, dostępne dla niego repozytoria projektowe zostaną automatycznie dodane na stronę Data Management – Design Repositories w oknie dialogowym Preferences .
Dodawanie repozytorium
Aby dodać repozytorium projektowe, kliknij przycisk
znajdujący się w prawym górnym rogu strony. Pojawi się okno Add Repository, w którym zdefiniujesz repozytorium.
Tylko repozytoria typu SVN mogą być tworzone za pomocą lokalnej usługi Version Control. Istniejące (zewnętrzne) repozytoria można podłączać — mogą to być repozytoria SVN lub Git.
Wymagane właściwości zależą od tego, czy tworzysz nowe repozytorium przy użyciu lokalnej usługi Version Control, czy łączysz się z istniejącym repozytorium zewnętrznym:
- New – nadaj repozytorium nazwę i opis.
- Existing – oprócz nazwy i opisu musisz podać URL do repozytorium oraz prawidłowe poświadczenia (User Name, Password) umożliwiające dostęp do tego repozytorium (jeśli są wymagane).
Podczas tworzenia repozytorium wewnętrznego dla Enterprise Server nazwa powinna zaczynać się od i może zawierać znaki A-Z, a-z lub 0-9. Podkreślenia, myślniki i spacje są dozwolone w środku nazwy. Nie można używać następujących słów: AUX, COM1-COM9, LPT1-LPT9, CON, NUL oraz PRN. Dla repozytorium zewnętrznego nie ma ograniczeń nazewnictwa.
Utwórz nowe repozytorium projektowe oparte na SVN za pomocą lokalnej usługi Version Control w Enterprise Server lub podłącz istniejące repozytorium (SVN lub Git), które zostało utworzone poza Enterprise Server.
Podłączone repozytorium projektowe zewnętrzne jest wyróżnione na liście repozytoriów poprzez zaznaczenie właściwości External (
).
Aby później edytować właściwości repozytorium projektowego, kliknij powiązaną kontrolkę Edit (
). Aby usunąć repozytorium projektowe, kliknij powiązaną kontrolkę Remove (
).
Lista repozytoriów jest automatycznie sortowana alfabetycznie według Name; najpierw wyświetlane są repozytoria lokalne zdefiniowane przez usługę Version Control, a następnie repozytoria zewnętrzne. Repozytorium oparte na Git Versioned Storage — którego nie można modyfikować ani usunąć — zawsze pojawia się na górze listy.
Udostępnianie repozytorium
Po scentralizowaniu repozytoriów projektowych musisz upewnić się, że osoby wymagające dostępu do danego repozytorium — w tym projektanci pracujący nad projektami płytek — mają ten dostęp. Osiąga się to poprzez udostępnienie repozytorium, a właściwie zarządzanie jego uprawnieniami dostępu. Aby to zrobić, kliknij powiązaną z repozytorium kontrolkę Share (
).
Pojawi się okno Manage Permissions ze wszystkimi elementami sterującymi niezbędnymi do udostępnienia repozytorium innym użytkownikom.
Gdy repozytoria projektowe są centralnie zorganizowane, udostępnianie innym sprowadza się po prostu do zarządzania uprawnieniami każdego repozytorium.
Rzeczy, o których warto pamiętać:
- Dla repozytorium lokalnego utworzonego przez usługę Version Control w Enterprise Server (tj. nie zewnętrznego) domyślne uprawnienia udostępniają to repozytorium użytkownikowi, który je utworzył, oraz roli Administrators. Oba te podmioty mają pełny dostęp do odczytu/zapisu.
- Dla repozytorium zewnętrznego domyślnie nie jest ono udostępnione nikomu — nawet użytkownikowi, który dodał do niego połączenie przez interfejs.
- Tylko repozytoria lokalne (nie zewnętrzne) mogą być udostępniane zdefiniowanym grupom ról w Enterprise Server lub publicznie. Role są wyświetlane po użytkownikach indywidualnych.
- W zakresie uprawnień użytkownik/rola ma dostęp do odczytu/zapisu, gdy opcja Can Write jest włączona (
). Jeśli ta opcja jest wyłączona, mają wyłącznie dostęp do odczytu.
Be Aware: Ustawienia uprawnień podczas udostępniania wewnętrznego repozytorium projektowego nie działają dokładnie tak, jak można by oczekiwać. Mimo że samo wewnętrzne repozytorium projektowe może zostać udostępnione użytkownikowi serwera z dostępem tylko do odczytu, użytkownik ten nadal może tworzyć NOWE projekty Workspace w tym repozytorium i uzyskać pełne uprawnienia odczytu/zapisu do odpowiadających im folderów projektu, które zostaną utworzone. Zwróć uwagę, że to błędne działanie dotyczy wyłącznie nowych projektów Workspace i ich folderów utworzonych przez tego użytkownika. Użytkownik nie będzie miał uprawnień zapisu do innych folderów w repozytorium.
- Aby odebrać istniejącemu użytkownikowi/roli udostępniony dostęp do repozytorium, kliknij powiązaną kontrolkę Remove (
).
Udostępnianie repozytorium lokalnego użytkownikowi Workspace
Aby udostępnić lokalne (nie zewnętrzne) repozytorium innemu użytkownikowi Workspace:
- Kliknij kontrolkę Add User w oknie Manage Permissions.

- W wyświetlonym oknie Add Users zacznij wpisywać imię i nazwisko, nazwę użytkownika lub adres e-mail użytkownika Workspace w polu Select Users to be added, aby wyświetlić listę pasujących użytkowników. Wybierz wymaganego użytkownika z tej listy. Można wybrać wielu użytkowników. Aby usunąć użytkownika, kliknij krzyżyk usuwania po prawej stronie jego nazwy.

- Ustaw uprawnienia dla użytkownika(ów) w polu Permission. Użyj listy rozwijanej, aby wybrać dostęp Read lub dostęp Read/Write.

- Kliknij przycisk
, aby potwierdzić dodanie użytkownika(ów) i wrócić do okna Manage Permissions.

- Kliknij przycisk
w oknie Manage Permissions.
Aby edytować uprawnienia istniejącego użytkownika, użyj opcji Can Write w oknie Manage Permissions, aby przełączać między dostępem do odczytu/zapisu (włączone) a dostępem tylko do odczytu (wyłączone).
Udostępnianie lokalnego repozytorium z określoną grupą ról
Jeśli repozytorium zostało utworzone za pośrednictwem lokalnej usługi Version Control, a nie jako repozytorium zewnętrzne, masz również możliwość udostępniania go grupom ról zdefiniowanym w Twoim Workspace. Aby udostępnić lokalne (nie zewnętrzne) repozytorium innej grupie ról:
- Kliknij element sterujący Add Group w oknie Manage Permissions.

- W wyświetlonym oknie Add Groups zacznij wpisywać nazwę grupy ról w polu Select Groups to be added, aby wyświetlić listę pasujących ról. Wybierz wymaganą rolę z tej listy. Można wybrać wiele ról. Aby usunąć rolę, kliknij krzyżyk usuwania po prawej stronie jej nazwy.

- Ustaw uprawnienia dla grup(y) ról za pomocą pola Permission. Użyj listy rozwijanej, aby wybrać pomiędzy dostępem Read a dostępem Read/Write.

- Kliknij przycisk
, aby potwierdzić dodanie roli (ról) i wrócić do okna Manage Permissions.

- Kliknij przycisk
w oknie Manage Permissions.
Aby edytować uprawnienia dla istniejącej roli, użyj opcji Can Write w oknie Manage Permissions, aby przełączać między dostępem do odczytu/zapisu (włączone) a dostępem tylko do odczytu (wyłączone).
Udostępnianie lokalnego repozytorium wszystkim użytkownikom
Jeśli repozytorium zostało utworzone za pośrednictwem lokalnej usługi Version Control, a nie jako repozytorium zewnętrzne, masz również możliwość udostępnienia tego repozytorium wszystkim użytkownikom Workspace. Aby udostępnić lokalne (nie zewnętrzne) repozytorium każdemu, kto może zalogować się do Workspace:
- Kliknij element sterujący Add Anyone w oknie Manage Permissions.

- Wpis Anyone zostanie dodany bezpośrednio do listy udostępnionych podmiotów i automatycznie udostępniony z dostępem do odczytu/zapisu.

- Kliknij przycisk
w oknie Manage Permissions.
Aby edytować uprawnienia dla podmiotu Anyone, użyj opcji Can Write w oknie Manage Permissions, aby przełączać między dostępem do odczytu/zapisu (włączone) a dostępem tylko do odczytu (wyłączone).
Udostępnianie zewnętrznego repozytorium użytkownikowi Workspace
Aby udostępnić zewnętrzne repozytorium użytkownikowi Workspace:
- Kliknij element sterujący Add User w oknie Manage Permissions.

- W wyświetlonym oknie Add Users zacznij wpisywać imię i nazwisko, nazwę użytkownika lub adres e-mail użytkownika Workspace w polu Select Users to be added, aby wyświetlić listę pasujących użytkowników. Wybierz wymaganego użytkownika z tej listy. Aby usunąć użytkownika, kliknij krzyżyk usuwania po prawej stronie jego nazwy.
W polu SVN User wprowadź nazwę zarejestrowaną w zewnętrznym repozytorium (SVN lub Git), a więc mającą dostęp. Zwykle będzie to odpowiadająca nazwa użytkownika zarejestrowana w repozytorium.

- Kliknij przycisk
, aby potwierdzić dodanie użytkownika i wrócić do okna Manage Permissions. Kliknij Add User, aby dodać kolejnych użytkowników zgodnie z krokiem 2 powyżej. Zwróć uwagę, że w drugim przykładowym obrazie poniżej użytkownik Barry został ustawiony tak, aby używać swojej odpowiadającej nazwy repozytorium BarrySmith, zamiast ogólnej nazwy ServerAdmin.

- Kliknij przycisk
w oknie Manage Permissions.
Użytkowników Workspace można mapować na dowolną prawidłową nazwę użytkownika w zewnętrznym repozytorium SVN, a wielu użytkowników Workspace może być mapowanych na jedną nazwę użytkownika w zewnętrznym repozytorium SVN.
- Sam dostęp (w ujęciu tylko do odczytu lub odczytu/zapisu) jest ostatecznie określany przez instalację zewnętrznego repozytorium. Enterprise Server nie wpływa na autoryzację użytkowników w zewnętrznym repozytorium, a więc nie może zarządzać tymi uprawnieniami po stronie Enterprise Server.
- Podczas uzyskiwania dostępu do zewnętrznego repozytorium Enterprise Server z poziomu Altium Designer, na przykład przy tworzeniu nowego projektu, mogą zostać wymagane poświadczenia połączenia z repozytorium, jeśli nie zostało to wykonane wcześniej. Te poświadczenia będą używane automatycznie przy kolejnych działaniach z tym repozytorium.
Zewnętrzny dostęp do lokalnego repozytorium projektowego SVN
Repozytorium projektowe utworzone za pośrednictwem lokalnej usługi Version Control w Enterprise Server może być dostępne przy użyciu klienta SVN, takiego jak TortoiseSVN. Dostęp odbywa się z użyciem standardowego protokołu sieciowego (obecnie obsługiwany jest svn://). Poprawny adres repozytorium można uzyskać/skopiować z dwóch miejsc:
- Strona VCS w interfejsie przeglądarkowym Workspace – w polu Repository Path dla docelowego repozytorium.
„Wewnętrzne” repozytorium utworzone z Enterprise Server pokaże ścieżkę adresu względną względem Enterprise Server, czyli adres localhost komputera-hosta.
Z perspektywy Altium Designer – lub dowolnej aplikacji nieuruchomionej na komputerze-hoscie Enterprise Server – ścieżki adresów repozytorium są oparte na nazwie komputerów-hostów.
Wyświetlany adres zależy od tego, czy uzyskujesz dostęp do repozytorium z tej samej maszyny, na której zainstalowano Enterprise Server (svn://localhost/<RepositoryName>), czy z komputera zdalnego (svn://<ComputerName>/<RepositoryName>, gdzie ComputerName to nazwa komputera, na którym znajduje się Enterprise Server).
Użyj uzyskanego adresu w funkcji przeglądania repozytorium w kliencie Subversion. Przy pierwszym dostępie otworzy się pośrednie okno dialogowe Authentication z prośbą o podanie prawidłowych poświadczeń połączenia. Wprowadź nazwę i hasło konta użytkownika Workspace, aby kontynuować. Te poświadczenia są prawidłowe, jeśli:
- Konto użytkownika zostało dodane after utworzeniem repozytorium w Enterprise Server. Użytkowników, których dotyczą utworzone repozytoria, można zobaczyć w pliku
passwd znajdującym się w folderze \ProgramData\Altium\Altium365Data\Repository na komputerze Enterprise Server – patrz poniżej.
- Repozytorium zostało udostępnione temu kontu użytkownika poprzez dodanie tej nazwy użytkownika za pomocą polecenia Add User w oknie Manage Permissions for <repository name> serwera. Jest to widoczne w pliku
authz repozytorium, znajdującym się w folderze \ProgramData\Altium\Altium365Data\Repository na komputerze Enterprise Server.
Przeglądanie zawartości repozytorium projektowego utworzonego przez lokalną usługę Version Control opartą na SVN w instalacji Enterprise Server.
Repozytorium projektowe utworzone za pośrednictwem lokalnej usługi Version Control ma swoje dane wewnętrzne przechowywane w odpowiadającym mu podfolderze w folderze \ProgramData\Altium\Altium365Data\Repository (dla domyślnej instalacji Enterprise Server). Zaleca się, aby pliki w tym folderze nie były zmieniane ani edytowane, poza działaniami konserwacyjnymi wykonywanymi przez personel IT.
Enterprise Server & synchronizacja użytkowników VCS
Gdy tworzony jest nowy użytkownik Workspace, zdefiniowane poświadczenia (User Name i Password) dla tego użytkownika są zapisywane zarówno w bazie danych Enterprise Server, jak i w usłudze Version Control, ponieważ ta druga nie może bezpośrednio uzyskać dostępu do hasła z tej pierwszej. Hasło jest przechowywane w usłudze Version Control w formacie zwykłego tekstu (w pliku \ProgramData\Altium\Altium365Data\Repository\passwd).
Wpisy na tej liście zapewniają dostęp do repozytorium SVN Enterprise Server podczas pracy z usługą przez Altium Designer. Mogą zdarzyć się sytuacje, w których poświadczenia użytkownika nie są uwzględnione w pliku, na przykład gdy użytkownicy Workspace już istnieją w momencie tworzenia pierwszego repozytorium SVN (a nie odwrotnie). Można to rozwiązać poprzez ręczne dodanie tych par nazwa/hasło do pliku passwd lub poprzez ponowne wprowadzenie hasła dla każdego profilu użytkownika w Workspace – to drugie podejście uzupełni odpowiednio plik passwd i nie będzie wymagało bezpośredniego dostępu do komputera Enterprise Server.
W domyślnej instalacji Enterprise Server poświadczenia użytkowników są przechowywane dla usługi Version Control w powiązanym pliku Passwd.
Usuwanie repozytorium
Aby usunąć repozytorium z usługi Version Control w Enterprise Server, kliknij element sterujący Remove (
) powiązany z tym repozytorium na stronie VCS w przeglądarkowym interfejsie Workspace.
Zwróć uwagę, że usunięcie repozytorium ze strony
Data Management – Design Repositories page w oknie dialogowym
Preferences w Altium Designer usuwa to repozytorium jedynie z użycia przez tę instancję Altium Designer. Nie usuwa repozytorium z usługi Version Control w Enterprise Server. Jeśli wylogujesz się z Enterprise Server i zalogujesz ponownie, repozytorium pojawi się ponownie na liście dostępnych repozytoriów dla tej instancji Altium Designer.
Wpisy repozytoriów zewnętrznych można usuwać niezależnie od tego, czy repozytorium zawiera jakiekolwiek projekty. Z kolei repozytoria lokalne (utworzone wewnętrznie przez usługę Version Control w Enterprise Server) nie mogą zostać usunięte, jeśli zawierają jeden lub więcej projektów. Zostaniesz o tym poinformowany i przed kontynuowaniem usuwania należy najpierw usunąć projekty.
Nawet wtedy, jeśli lokalne repozytorium nie ma projektów, nie zostanie faktycznie usunięte, lecz przeniesione do katalogu archiwum (\ProgramData\Altium\Altium365Data\RepositoryDumps, dla domyślnej instalacji Enterprise Server). Repozytorium będzie zawarte w pliku Dump, z prefiksem unikalnego identyfikatora (np. 775f6c22-b9a1-468c-9f1f-4f217bb3be6b_central design repository.dump).