Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Aby pakiet VSPackage kontroli źródła był widoczny w programie Visual Studio, należy go zarejestrować. Jeśli zarejestrowano więcej niż jeden pakiet kontrolny VSPackage, użytkownik może wybrać, który pakiet VSPackage chce załadować w odpowiednich momentach. Zobacz Pakiety VSPackage, aby uzyskać więcej informacji na temat pakietów VSPackage i sposobu ich rejestrowania.
Rejestrowanie pakietu kontroli źródła
Pakiet kontroli źródła jest zarejestrowany, aby środowisko programu Visual Studio było w stanie go znaleźć i wykonać zapytanie dotyczące obsługiwanych funkcji. Jest to zgodne ze schematem ładowania opóźnionego, w którym wystąpienie pakietu jest tworzone tylko wtedy, gdy jego funkcje lub polecenia są wymagane lub zostają wyraźnie zażądane.
Pakiety VSPackage umieszczają informacje w kluczu rejestru specyficznym dla wersji, HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\X.Y, gdzie X jest numerem wersji głównej, a Y jest numerem wersji pomocniczej. Ta praktyka umożliwia obsługę równoległej instalacji wielu wersji programu Visual Studio.
Interfejs użytkownika programu Visual Studio obsługuje wybór spośród wielu zainstalowanych wtyczek kontroli źródła (za pośrednictwem pakietu adaptera kontroli źródła), a także pakietów VSPackage kontroli źródła. Jednocześnie może istnieć tylko jedna aktywna wtyczka kontroli źródła lub pakiet VSPackage. Jednak zgodnie z poniższym opisem środowisko IDE umożliwia przełączanie między wtyczkami kontroli źródła i pakietami VSPackage za pomocą automatycznego mechanizmu wymiany pakietów opartego na rozwiązaniu. W ramach pakietu VSPackage kontroli źródła istnieją pewne wymagania umożliwiające włączenie tego mechanizmu wyboru.
Wpisy rejestru
Pakiet kontroli źródła wymaga trzech prywatnych identyfikatorów GUID:
Identyfikator GUID pakietu: jest to główny identyfikator GUID pakietu, który zawiera implementację kontroli źródła (o nazwie ID_Package w tej sekcji).
Identyfikator GUID systemu kontroli wersji: jest to identyfikator GUID dla VSPackage używanej do rejestrowania w Stub kontroli źródła programu Visual Studio i jest również używany jako identyfikator GUID kontekstu interfejsu polecenia użytkownika. Identyfikator GUID usługi kontroli źródła jest zarejestrowany w ramach identyfikatora GUID kontroli źródła. W tym przykładzie identyfikator GUID systemu kontroli wersji jest nazywany ID_SccProvider.
Identyfikator GUID usługi kontroli źródła: jest to prywatny identyfikator GUID usługi używany przez program Visual Studio (nazywany SID_SccPkgService w tej sekcji). Oprócz tego pakiet kontroli źródła musi definiować inne identyfikatory GUID dla pakietów VSPackage, okien narzędzi itd.
Następujące wpisy rejestru muszą być dokonywane przez pakiet VSPackage kontroli źródła:
| Nazwa klucza | Wpisy |
|---|---|
HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ VisualStudio\ X.Y\ SourceControlProviders\ |
(ustawienie domyślne) = rg_sz:{ID_SccProvider} |
HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ VisualStudio\ X.Y\ SourceControlProviders\ {ID_SccProvider}\ |
(ustawienie domyślne) = rg_sz:<Przyjazna nazwa pakietu> Service = rg_sz:{SID_SccPkgService} |
HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ VisualStudio\ X.Y\ SourceControlProviders\ {ID_SccProvider}\ Name\ |
(ustawienie domyślne) = rg_sz:#<Identyfikator zasobu dla zlokalizowanej nazwy> Pakiet = rg_sz:{ID_Package} |
HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ VisualStudio\ X.Y\ SolutionPersistence\ <PackageName>\(Pamiętaj, że nazwa klucza, SourceCodeControl, jest już używana przez program Visual Studio i nie jest dostępna jako wybór dla <PackageName>). |
(ustawienie domyślne) = rg_sz:{ID_Package} |
Wybieranie pakietu kontroli źródła
Kilka wtyczek opartych na API kontroli źródła i pakietów kontroli źródła VSPackage może być zarejestrowanych jednocześnie. Proces wybierania wtyczki kontroli źródła lub pakietu VSPackage musi zapewnić, że program Visual Studio ładuje wtyczkę lub pakiet VSPackage w odpowiednim czasie i może odroczyć ładowanie niepotrzebnych składników, dopóki nie będą wymagane. Ponadto program Visual Studio musi usunąć cały interfejs użytkownika z innych nieaktywnych pakietów VSPackage, w tym elementów menu, okien dialogowych i pasków narzędzi oraz wyświetlić interfejs użytkownika dla aktywnego pakietu VSPackage.
Program Visual Studio ładuje pakiet VSPackage kontroli źródła po wykonaniu jednej z następujących operacji:
Rozwiązanie jest otwierane (gdy rozwiązanie jest pod kontrolą źródła).
Gdy otworzy się rozwiązanie lub projekt, które są kontrolowane przez źródło, środek IDE powoduje załadowanie pakietu VSPackage kontroli źródła, który został przypisany do tego rozwiązania.
Wszystkie polecenia menu kontroli źródła vsPackage są wykonywane.
Pakiet VSPackage kontroli źródła powinien załadować wszystkie wymagane składniki tylko wtedy, gdy będą one rzeczywiście używane (co jest również znane jako opóźnione ładowanie).
Automatyczne zamienianie pakietów VSPackage oparte na rozwiązaniu
Pakiety VSPackage kontroli kodu źródłowego można zmieniać ręcznie poprzez okno dialogowe Opcje programu Visual Studio w kategorii Kontrola kodu źródłowego. Automatyczne zamienianie pakietów opartych na rozwiązaniu oznacza, że pakiet kontroli źródła, który został wyznaczony dla określonego rozwiązania, jest automatycznie ustawiany na aktywny po otwarciu tego rozwiązania. Każdy pakiet kontroli źródła powinien implementować SetActive i SetInactive. Program Visual Studio obsługuje przełączanie się zarówno między wtyczkami systemu kontroli wersji (implementującymi interfejs API wtyczek kontroli wersji), jak i pakietami VSPackage kontroli wersji.
Pakiet adaptera kontroli źródła służy do przełączania się do dowolnej wtyczki opartej na interfejsie API kontroli źródła. Proces przełączania do pośredniego pakietu adaptera kontroli źródła i określania, która wtyczka systemu kontroli wersji musi być ustawiona jako aktywna lub nieaktywna, jest przejrzysty dla użytkownika. Pakiet adaptera jest zawsze aktywny, gdy jakakolwiek wtyczka kontroli źródła jest aktywna. Przełączanie między dwoma wtyczkami do kontroli źródła sprowadza się do prostego ładowania i wyładowywania biblioteki DLL. Przełączenie do pakietu VSPackage kontroli źródła obejmuje jednak interakcję ze środowiskiem IDE w celu załadowania odpowiedniego pakietu VSPackage.
Pakiet kontroli źródła VSPackage jest wywoływany po otwarciu dowolnego rozwiązania, gdy klucz rejestru dla VSPackage znajduje się w pliku rozwiązania. Po otwarciu rozwiązania program Visual Studio znajdzie wartość rejestru i załaduje odpowiedni pakiet VSPackage kontroli źródła. Wszystkie pakiety kontroli źródła VSPackage muszą mieć wpisy rejestru opisane powyżej. Rozwiązanie, które jest pod kontrolą źródła, jest oznaczone jako skojarzone z konkretnym pakietem VSPackage kontroli źródła. Pakiet VSPackage do kontroli źródła musi zaimplementować IVsSolutionPersistence, aby umożliwić automatyczną zamianę pakietu VSPackage bazującą na rozwiązaniu.
Interfejs użytkownika programu Visual Studio dla wyboru i przełączania pakietów
Program Visual Studio udostępnia interfejs użytkownika do wyboru pakietu VSPackage i wtyczki do kontroli źródła w oknie dialogowym Opcje w kategorii Kontrola źródła. Umożliwia użytkownikowi wybranie wtyczki aktywnej kontroli źródła lub pakietu VSPackage. Lista rozwijana zawiera następujące elementy:
Wszystkie zainstalowane pakiety kontroli źródła
Wszystkie zainstalowane wtyczki kontroli źródła
Opcja "none", która wyłącza kontrolę kodu źródłowego
Widoczny jest tylko interfejs użytkownika dla wyboru aktywnej kontroli źródła. Zaznaczenie pakietu VSPackage powoduje ukrycie interfejsu użytkownika poprzedniego pakietu VSPackage i wyświetlenie interfejsu użytkownika dla nowego pakietu. Aktywny pakiet VSPackage jest wybierany indywidualnie dla każdego użytkownika. Jeśli użytkownik ma wiele kopii programu Visual Studio otwieranych jednocześnie, każdy z nich może potencjalnie używać innego aktywnego pakietu VSPackage. Jeśli wielu użytkowników jest zalogowanych na tym samym komputerze, każdy użytkownik może mieć otwarte oddzielne wystąpienia programu Visual Studio, z których każdy ma inny aktywny pakiet VSPackage. Gdy użytkownik zamknie wiele wystąpień programu Visual Studio, pakiet VSPackage kontroli źródła, który był aktywny dla ostatniego otwartego rozwiązania, staje się domyślnym pakietem VSPackage kontroli źródła, który ma być aktywny po ponownym uruchomieniu.
W przeciwieństwie do poprzednich wersji programu Visual Studio, ponowne uruchomienie środowiska IDE nie jest już jedynym sposobem przełączania pakietów kontroli źródła VSPackage. Wybór pakietu VSPackage jest automatyczny. Przełączanie pakietów wymaga uprawnień użytkownika systemu Windows (a nie administratora lub użytkownika zasilania).