2012-10-12 14 views
5

Mam środowiska TFS z instalacji po rozgałęzieńNuget repozytorium na oddział z TFS

  • Dev - podstawowy oddział pracy dla programistów
  • główna - Stabilny, zwalniany branży
  • Hotfix - Do poprawek do produkcji kod, który nie jest częścią normalnego cyklu wydań

Przygotowujemy się do korzystania z Nuget i chcę skonfigurować takie rzeczy, że kod w gałęzi Dev pobiera pakiety z ' Dev 'nuget repozytorium, główne z "głównego", itd.

Teraz wymyśliłem rzeczy do tego stopnia, że ​​mam pojedynczy plik zawierający katalog główny mojej gałęzi, który mówi nuget.exe, które repozytorium do posługiwać się.

Próbuję teraz dowiedzieć się, jak zawartość tych plików jest inna w każdej z tych gałęzi. Mogę je sprawdzić osobno w każdym oddziale, ale to spowoduje problemy z połączeniem z Dev-> Main i Main-> HotFix.

Tak, myślę, że to, co chcę zrobić, to jakoś wyłączyć ten konkretny plik konfiguracyjny z części scaleń z Dev-> Main, itp. Jakikolwiek sposób to zrobić?

Lub, czy istnieje inny sposób osiągnięcia tego, co chcę zrobić z Nuget, pod względem wskazywania go do różnych repozytoriów nugetów dla różnych gałęzi?

+0

Czy mogę zapytać, co zyskujesz z robienia tego? – Betty

+0

Od posiadania różnych repozytoriów dla różnych oddziałów? Cóż, chcemy użyć nuget do obsługi referencji pomiędzy różnymi projektami zespołów TFS. Tak więc, gdy programista pracuje nad Komponentem A (który ma odniesienie do Komponentu B w innym projekcie zespołowym) w gałęzi Dev, chcemy, aby ich odwołanie do nugetu wskazywało wersję Dev. Podczas pracy z gałęzi HotFix chcemy, aby to odniesienie wskazywało wersję Prod. Czy to ma sens? –

+0

A więc po zwolnieniu komponentu A coś mogło się zepsuć, ponieważ zależało ono od funkcji, która nie została jeszcze wydana w Komponencie B? czy w każdym razie uwolnisz je wszystkie jednocześnie? – Betty

Odpowiedz

5

Będziesz musiał zrobić kilka sztuczek ...

  • Mają inny kanał za oddział. Łatwym sposobem ustawiania wielu kanałów jest www.myget.org
  • Włącz przywrócić pakiet Nuget w roztworach chcesz zapisać się tego zachowania
  • W .nuget \ pliku nuget.config roztworze, dodaj następujące:
<configuration> 
    <packageSources> 
    <add key="Branch X packages" value="http://www.myget.org/F/corpxyzbranchxyz" /> 
    </packageSources> 
    <disabledPackageSources /> 
    <activePackageSource> 
    <add key="Branch X packages" value="http://www.myget.org/F/corpxyzbranchxyz" /> 
    </activePackageSource> 
</configuration> 

Ten ma oznacza, że ​​będziesz mieć inny plik nuget.config na gałąź i że należy być ostrożnym podczas łączenia/rozgałęzienia.

+0

Dzięki. W zasadzie to się skończyło, chociaż nie wiedziałem o węźle activePackageSource. Miałem nadzieję na sposób na uniknięcie łatwych błędów podczas łączenia między oddziałami, ale wygląda na to, że jest tak dobry, jak mamy. –

Powiązane problemy