Kontrola wersji oparta na SVN
W zależności od typu repozytorium będzie ono dostępne za pośrednictwem różnych protokołów, w tym:
- Dostęp do plików w sposób konwencjonalny, zwykle dla repozytoriów lokalnych lub sieciowych.
-
Protokół
svn, z użyciem czystego tekstu lub TCP/IP – albo jego bezpieczny odpowiedniksvn+ssh. -
Metoda
http, zwykle z użyciem WebDAV przez http – albo jej bezpieczny odpowiednikhttps.
Repozytoria Subversion (SVN) są podłączane oraz – w razie potrzeby – tworzone na stronie Data Management – Design Repositories page w oknie dialogowym Preferences.
Zarządzanie repozytoriami projektowymi SVN
Repozytoria projektowe SVN są zarządzane na stronie Data Management – Design Repositories page w oknie dialogowym Preferences. Z tego poziomu możesz wykonać szereg działań, w tym:
-
Tworzenie nowych repozytoriów SVN opartych na plikach z użyciem funkcji kontroli wersji wbudowanych w Altium Designer.
-
Łączenie z istniejącymi repozytoriami SVN.
-
Sterowanie stanem aktywności każdego zdefiniowanego repozytorium.
Dla każdego zarejestrowanego, czyli podłączonego repozytorium, prezentowane są następujące informacje:
- Name – znacząca nazwa repozytorium. Może ona na przykład odzwierciedlać projekty przechowywane w repozytorium. Ta nazwa jest używana w innych miejscach programu do szybkiego wyboru repozytorium projektowego, które ma zostać użyte, np. podczas otwierania projektu z kontroli wersji.
- Activated – czy repozytorium jest dostępne do użycia przez system (włączone), czy nie (wyłączone). Nowo utworzone lub podłączone repozytorium jest domyślnie aktywowane.
- Type – typ repozytorium; SVN lub Git.
- Repository – adres URL do folderu głównego repozytorium.
- Status – czy połączenie między Altium Designer a repozytorium jest poprawne , czy nie Jeśli połączenie jest nieudane, zostanie wyświetlony komentarz wskazujący problem.
Tworzenie nowego repozytorium SVN
Tworzenie nowych repozytoriów projektowych bezpośrednio w Altium Designer odbywa się na stronie Data Management – Design Repositories page w oknie dialogowym Preferences. Kliknij przycisk
i wybierz SVN z powiązanego menu rozwijanego. Pojawi się okno dialogowe Create SVN Design Repository.
Okno dialogowe udostępnia zestaw opcji konfiguracyjnych, które pozwalają zdefiniować lokalizację folderu repozytorium i metodę (protokół połączenia), a także lokalną nazwę połączenia oraz docelową ścieżkę folderu dla pobranych (checked-out) plików projektu. Zwróć uwagę, że metody dostępu svn i http wymagają dodatkowych informacji dotyczących systemu hosta i sposobu dostępu do niego.
Po ustawieniu wszystkich wymaganych parametrów kliknij OK. Repozytorium zostanie utworzone w wskazanej lokalizacji, a Altium Designer nawiąże z nim połączenie. Wpis pojawi się na liście repozytoriów projektowych na stronie Data Management – Design Repositories w oknie dialogowym Preferences.

Przykład nowo utworzonego repozytorium projektowego SVN, widocznego w Altium Designer jako Local Repository.
Łączenie z istniejącym repozytorium SVN
W środowisku współpracy jedno lub więcej repozytoriów projektowych mogło już zostać utworzonych w lokalizacji dostępnej dla wielu użytkowników. W takim przypadku nie musisz tworzyć nowego repozytorium – „wyważać otwartych drzwi” – wystarczy połączyć się z wymaganym, istniejącym repozytorium. Dotyczy to również sytuacji, gdy usunąłeś repozytorium z listy repozytoriów i chcesz dodać je ponownie.
Aby połączyć się z istniejącym repozytorium, na stronie Data Management – Design Repositories w oknie dialogowym Preferences kliknij przycisk
i wybierz SVN z powiązanego menu rozwijanego. Pojawi się okno dialogowe SVN Design Repository. Wprowadź nazwę, pod którą repozytorium będzie widoczne w Altium Designer, określ domyślną ścieżkę checkout oraz metodę dostępu do repozytorium i ścieżkę do folderu głównego repozytorium. Możesz także wskazać konkretny podfolder w repozytorium.
Po ustawieniu wszystkich wymaganych parametrów kliknij OK – zostanie nawiązane połączenie i repozytorium będzie gotowe do użycia.
Łączenie z istniejącym repozytorium – w tym przypadku repozytorium lokalne na dysku twardym.
Łączenie z istniejącym repozytorium – w tym przypadku repozytorium wewnętrzne w instalacji serwerowej.
Options and Controls of the SVN Design Repository Dialog
Właściwości repozytorium projektowego
- Name - przejrzyj i/lub zmień nazwę repozytorium projektowego.
- Default Checkout Path - kliknij przycisk przeglądania w polu tekstowym, aby wyszukać i wybrać folder repozytorium projektowego.
Repozytorium
- Method - metoda (protokół połączenia) repozytorium projektowego.
-
Server - serwer hosta dla repozytorium.
-
Server Port - sprawdź, czy repozytorium używa domyślnego czy niestandardowego portu serwera.
-
Default - jeśli zaznaczone, repozytorium używa domyślnego portu serwera.
-
Non Default - jeśli zaznaczone, repozytorium używa niestandardowego portu serwera. Informacje o porcie serwera również zostaną wyświetlone.
-
-
Repository Subfolder - wyznaczony podfolder repozytorium. Kliknij
po prawej stronie pola Repository Subfolder, aby otworzyć okno Browse Repository directories dialog i wybrać podfolder w katalogu repozytorium.
-
User Name - nazwa użytkownika repozytorium.
-
Password - hasło do repozytorium projektowego.
-
Test - kliknij, aby przetestować, czy połączenie z repozytorium projektowym działa. Pojawi się okno dialogowe potwierdzające, czy działa, czy nie. Jeśli połączenie się nie powiedzie, ponownie sprawdź i popraw dane.
Edycja właściwości repozytorium
Właściwości repozytorium projektowego możesz edytować w dowolnym momencie. Na przykład możesz chcieć zmienić nazwę repozytorium, tak jak jest wyświetlana i przywoływana w Altium Designer. Albo możesz chcieć edytować połączenie, np. aby wskazywało inne repozytorium. Aby to zrobić, wybierz wpis repozytorium na liście repozytoriów (na stronie Data Management – Design Repositories w oknie dialogowym Preferences ), a następnie kliknij przycisk
. Pojawi się okno dialogowe SVN Design Repository (lub Git Repository), w którym możesz wprowadzić wymagane zmiany.
Rozłączanie z repozytorium
Aby rozłączyć repozytorium projektowe, wybierz jego wpis na liście i kliknij przycisk
. Repozytorium zostanie usunięte z listy podłączonych repozytoriów projektowych. Samo repozytorium nie zostanie usunięte – zostanie jedynie odłączone od systemu. Aby ponownie z niego korzystać, połącz się z nim.
Korzystanie z repozytoriów projektowych SVN
Po zdefiniowaniu, połączony charakter repozytorium SVN Design Repository upraszcza zarówno dodanie projektu do tego repozytorium, jak i otwarcie istniejącego projektu z tego repozytorium. Zamiast pamiętać ścieżkę lub przeklikiwać się przez menu przeglądania, aby wskazać repozytorium, po prostu wybierasz wymagane repozytorium z wygodnej listy wszystkich Design Repositories, z którymi jesteś aktualnie połączony i które są aktywowane do użycia.
Zasadniczo pliki projektu można dodać do repozytorium kontroli wersji, używając poleceń z paneli Projects lub Storage Manager, co obejmuje kroki zarejestrowania plików do dodania, a następnie zatwierdzenia (commit) tych plików do VCS.
Proces pokazany poniżej wykorzystuje panel Projects, który jest wygodniejszy „pod ręką”, ale warto zauważyć, że panel Storage Manager udostępnia więcej szczegółów i opcji VCS.
Dodawanie lokalnego projektu do SVN Design Repository
Dodanie lokalnego projektu (nieobjętego obecnie kontrolą wersji) do Design Repository jest procesem prostym. Przy otwartym projekcie użyj polecenia Add Project Folder To Version Control z panelu Projects panel lub Storage Manager panel albo z Project » History & Version Control menu głównego. Pojawi się okno dialogowe Add to Version Control. Pole u góry tego okna prezentuje listę rozwijaną wszystkich połączonych i aktywowanych Design Repositories. Wybierz wymagane repozytorium.
Hierarchia folderów w wybranym Design Repository jest prezentowana w obszarze Folders okna dialogowego. Wskaż istniejący folder, do którego mają zostać dodane pliki projektu, albo utwórz nowy folder przyciskiem
. W tym drugim przypadku folder zostanie dodany w określonym miejscu w hierarchii folderów repozytorium i będzie nazwany tak jak folder źródłowy zawierający projekt.

Dodawanie lokalnego projektu projektowego do lokalnego repozytorium projektowego.
Kliknij
, aby potwierdzić ustawienia. Okno dialogowe zostanie następnie wypełnione wpisami plików pochodzącymi z folderu źródłowego, z zaznaczonymi plikami składowymi projektu – w razie potrzeby użyj pól wyboru, aby włączyć lub wyłączyć pliki do dołączenia. Wybierz
, aby potwierdzić wybór – zwróć uwagę, że wpisy plików w panelu Projects mają teraz status Scheduled for addition Oznacza to, że VCS zarejestrował pliki do dodania do kontroli wersji i są one gotowe do zaewidencjonowania (Committed) w repozytorium VCS.
Pliki zaplanowane do dodania
Zatwierdzanie (Commit) projektu
Pliki o statusie Scheduled for addition zostaną dodane do kontroli wersji i do repozytorium projektowego podczas wykonywania operacji Commit. Aby to zrobić, wybierz polecenie Version Control » Commit Whole Project z menu kontekstowego (prawy przycisk myszy) panelu Projects, aby rozpocząć proces.
Polecenie Commit Whole Project
Kolejna postać okna dialogowego Add to Version Control pozwala odznaczyć poszczególne pliki projektu (lub zaznaczyć dodatkowe) do objęcia kontrolą wersji. Można też dodać komentarz, który zostanie dołączony do nadchodzącej rewizji VCS.
Dołączenie wybranych plików objętych kontrolą wersji
Następnie projekt i jego składowe dokumenty projektowe są kopiowane do repozytorium VCS i rejestrowane jako nowa rewizja, a status plików w panelach Altium Designer zmienia się na No Modification
Tworzenie nowego projektu objętego kontrolą wersji
Podczas tworzenia nowego projektu objętego kontrolą wersji pole Repository w oknie dialogowym Create Project dialog prezentuje listę rozwijaną wszystkich połączonych i aktywowanych Design Repositories. Wybierz wymagane repozytorium.

Tworzenie nowego projektu projektowego objętego kontrolą wersji – wszystkie zdefiniowane Design Repositories są dostępne do użycia.
Opcja Local Storage w oknie dialogowym Create Project określa, gdzie jest przechowywana kopia robocza projektu. To te pliki są otwierane i edytowane w Altium Designer, a po zakończeniu edycji ostatecznie zatwierdzane z powrotem do repozytorium (check-in) jako nowe rewizje.
Otwieranie projektu objętego kontrolą wersji z SVN Design Repository
Równie prosta jest możliwość otwarcia projektu projektowego objętego kontrolą wersji, który znajduje się w Design Repository. Użyj polecenia File » Checkout – pojawi się okno dialogowe Check Out. Użyj pola Check out from, aby wybrać wymagane repozytorium z listy rozwijanej wszystkich połączonych i aktywowanych repozytoriów projektowych dostępnych dla Ciebie.
Hierarchia folderów w wybranym Design Repository jest prezentowana w obszarze Folders okna dialogowego. Użyj tego obszaru, aby wskazać dokładny folder, który ma zostać pobrany (check out) z repozytorium.
Użyj pola Check out to, aby określić, dokąd ma zostać pobrana zawartość wskazanego folderu. To jest Twoja lokalna przestrzeń robocza (sandbox).

Pobierz (check out) istniejący projekt projektowy objęty kontrolą wersji z wybranego Design Repository w kontrolowany i prosty sposób!
Blokowanie plików projektu SVN
SVN VCS obsługuje blokowanie plików tak, aby żaden inny użytkownik nie mógł zatwierdzić zmian w zablokowanych plikach. Aby zablokować plik projektu w SVN VCS, kliknij go prawym przyciskiem myszy w panelu Projects i wybierz polecenie History & Version Control » Lock (lub wybierz polecenie Lock z menu kontekstowego pliku w panelu Storage Manager). Zablokowany plik jest oznaczony ikoną
w panelach Projects i Storage Manager.
Plik został zablokowany przez Ciebie lub przez innego użytkownika. Gdy jest zablokowany przez Ciebie, inny użytkownik nie może zaktualizować pliku do nowej rewizji w repozytorium (chyba że zostanie wymuszone odblokowanie). Chociaż do oznaczenia zablokowanego pliku używany jest jeden typ ikony, to powiązany tekst wskaże, kto zablokował plik – Locked by me lub Locked by someone else. Tekst VCS będzie też wskazywał stany łączone, na przykład: Modified and locked by me.
Aby odblokować dokument, który jest aktualnie zablokowany, kliknij go prawym przyciskiem myszy w panelu Projects i wybierz polecenie History & Version Control » Unlock (lub wybierz polecenie Unlock z menu kontekstowego pliku w panelu Storage Manager). Po odblokowaniu każdy użytkownik może zatwierdzić dokument wraz z dowolnymi modyfikacjami do repozytorium kontroli wersji.
Czyszczenie (Cleanup) dokumentu
Zanim zostaną wprowadzone jakiekolwiek zmiany w Twojej lokalnej kopii roboczej pliku projektu, SVN tworzy swego rodzaju „listę zadań” – działania, które musi wykonać, aby bezpiecznie przeprowadzić zmiany. W trakcie wykonywania tych działań zakłada blokadę na odpowiednią część kopii roboczej. Zapobiega to dostępowi innych klientów Subversion do kopii roboczej w trakcie zmiany. Po zakończeniu blokada jest zwalniana, a Subversion czyści swoją prywatną listę zadań. Jeśli jednak operacja Subversion zostanie przerwana – na przykład proces zostanie przerwany albo komputer ulegnie awarii – prywatna lista zadań pozostaje na dysku. Pozwala to SVN wrócić później do tej listy, dokończyć niedokończone operacje i przywrócić kopię roboczą do spójnego stanu.
Polecenie cleanup, dostępne po kliknięciu prawym przyciskiem myszy wpisu dokumentu projektu i wybraniu History & Version Control » Cleanup lub po wybraniu polecenia Project » Version Control » Cleanup z menu głównego, przeszukuje Twoją kopię roboczą i uruchamia pozostałe elementy listy zadań, usuwając blokady kopii roboczej w miarę kończenia tych operacji, a ostatecznie przywracając Twoją kopię roboczą dokumentu projektu do spójnego stanu.