2009-03-03 7 views
7

Pracuję w zespole złożonym z 2 programistów i obecnie korzystamy z VSS i nie mamy ciągłej integracji ani codziennej kompilacji i kilku testów jednostkowych.subwersja/tempomat/nant/nunit z projektami i rozwiązaniami wizualnymi studio

Staram się zmienić naszą kontrolę kodu źródłowego na Subversion i jednocześnie rozpocząć pracę z bardziej profesjonalnym procesem.

Subversion/tempomat/nant/nunit wydaje się dość popularną kombinacją z tego, co dotychczas widziałem i właśnie zainstalowałem je na zapasowej maszynie.

Pobrałem podręcznik dotyczący subversion i to jest 400 stron dla jednego z narzędzi!

Naprawdę chcę po prostu zacząć korzystać z wypróbowanych i przetestowanych wzorów sprawdzonych już w środowisku naturalnym, a następnie dostosowywać je zgodnie z wymaganiami i jak moja znajomość narzędzi wzrasta.

Czy ktoś jest świadomy jakiejkolwiek książki/samouczka/solucja, która obejmuje tylko podstawowe elementy, aby uzyskać mnie i działa jak najszybciej z tej szczególnej kombinacji narzędzi?

Odpowiedz

5

Używam subversion już od kilku lat i muszę powiedzieć, że najlepsze wprowadzenie, które znalazłem, jest zawarte w pliku pomocy dla TortoiseSVN. TortoiseSVN to kolejny darmowy klient dla systemu Windows z integracją z Eksploratorem. Gorąco polecam lekturę pomocy Tortoise w pierwszej kolejności, nawet przed oryginalnymi dokumentami dla subversion. W razie potrzeby odwołuje się do oficjalnych dokumentów.

Również żółw jest moim ulubionym klientem. W rzeczywistości na większości maszyn jest to jedyny składnik, którego potrzebuję. Wykonuje wszystkie funkcje, które używam rutynowo, w tym tworzenie repozytoriów. Chociaż nie jest to normalne narzędzie dla zwykłych narzędzi wiersza poleceń, a ja także je instaluję w większości przypadków, znajduję tylko narzędzia cli niezbędne do automatyzacji ze skryptów i (nieczęste) funkcji konserwacji repozytorium.

Jestem w trakcie rearchitektury naszego własnego środowiska kompilacji w pracy, więc przechodzę przez opcje dla wielu narzędzi do budowania/rozwijania. Oto narzędzia, które mogę polecić lub polecam od innych:

WinMerge: zdecydowanie zalecane narzędzie do porównywania, instaluj po TortoiseSVN, aby uzyskać najlepszą integrację. Używam tego narzędzia codziennie do wielu celów, niektóre poza rozwojem.

TeamCity: serwer CI, który wydaje się być dobrze dopracowany. Nie próbowałem jeszcze tego, ale jest to wiodący rywal w CC.NET, biorąc pod uwagę moje doświadczenie z CC.NET (rok) i dobre recenzje, jakie otrzymuje. Hudson to kolejna dobrze sprawdzona opcja.

VisualSVN Server: zalecany darmowy serwer http (s) dla SVN, który oferuje integrację AD dla uprawnień i konsolę msc w stylu Microsoftu. Właśnie zakończyłem wdrażanie go w pracy i jest to bardzo proste. Konieczność, jeśli chcesz zdalnie (IP) zameldowanie/wymeldowanie, szyfrowanie ssl, skrypty przechwytujące repozytorium i inne funkcje oparte na serwerze.

VisualSVN: dobrze sprawdzona wtyczka Visual Studio dla SVN. Nie próbowałem tego, ale jest uważany za zakup bez myślenia. [Edytuj: zgodnie z tym, co przeczytałem tutaj na przepełnieniu, AnkhSVN jest darmową opcją, która działa na podobnej zasadzie.]

Monitor SVN: zalecane bezpłatne oprogramowanie monitorujące, które ostrzega użytkownika o zmianach w repozytorium. Konfigurowalny, co monitoruje i jakie działania podejmuje. Zależy od zainstalowanego TortoiseSVN.

BugTracker.NET: zalecany darmowy serwer śledzenia problemów. Zawiera integrację z SVN w celu powiązania problemów śledzonych z wersjami subversion. Nie wiem, czy TeamCity ma podobną funkcję, ale już korzystamy z tego poza programowaniem, aby śledzić problemy z helpdesk i świetnie nadaje się na darmowy pakiet.

Nie mam doświadczenia z testowaniem jednostek, zasięgiem, narzędziami do dokumentacji dla .NET, więc nie mogę tam komentować.

Jestem Pythonistą, więc podłączę jedną rzecz Python może być przydatna dla SVN, co oznacza, że ​​możesz używać biblioteki PySVN do wykonywania dowolnych zadań zautomatyzowanego repozytorium, które są zbyt skomplikowane dla skryptów za pomocą polecenia -line narzędzia. Używam go do tworzenia tagów, gdy kompilacja jest gotowa do otagowania i wdrożenia.

Wybierz niektóre z tych narzędzi, a znajdziesz się przed nimi. Rozwijanie procesów wokół nich i szkolenie personelu, cóż, to wciąż jest praca dla ciebie. :)

+0

Polecam używanie narzędzia do przekierowania trójdrogowego przez WinMerge, które może pokazywać różnice między dwiema wersjami pliku (i nie zmienia się w porównaniu z wersją źródłową). Moim osobistym ulubionym jest SourceGear DiffMerge (do pobrania za darmo). –

+0

Dzięki za szczegółową odpowiedź! –

1

Jeśli chcesz, aby serwer Subversion działał i działał jak najszybciej, nie wiedząc wiele o repozytorium, sprawdź program Visual SVN here. Jest to aplikacja GUI, która pozwala konfigurować repozytorium bez potrzeby czytania wielu dokumentacji. Jest tam również dimecast here.

Jeśli chodzi o integrację z CC.NET, przejrzyj dokumentację CC.NET na bloku kontrolnym subversion here, który jest dość dobrze podzielony na swoją stronę i powinieneś dość łatwo znaleźć znaczniki xml dla svn.

Powinieneś również sprawdzić implementację narzędzi po stronie klienta, takich jak Tortoise SVN i Ankh SVN.

Dla NANT, sprawdź te dimecasty here. Świetne samouczki na temat skutecznego korzystania z nant.

+0

Polecam Ankh SVN 2.0 przez Visual SVN. Nie tylko jest ona wolna (w obu znaczeniach), Ankh używa API Microsoftu do kontroli źródła, podczas gdy Visual SVN hackuje rzeczy razem z dodatkiem. Jeśli chcesz zobaczyć jakąś różnicę, spróbuj zmienić nazwy plików. –

+0

Zgadzam się, tylko sugerowałem użycie Visual SVN jako menedżera repozytorium sortów. Tworzenie, usuwanie, dodawanie bezpieczeństwa użytkowników, grup itp. Nie wiedziałem, że Ankh SVN 2.0 ma taką funkcjonalność? – Joseph

+0

Dzięki Joseph.Sprawdzę to :-) –

0

To prawdopodobnie nie jest pomocne na pytanie pod ręką ale ...

Nie mówię, że nie jest ... ale nawet jeśli miał ten podręcznik, to masz dużo nauki. Naprawdę musisz nauczyć się każdego z fragmentów w izolacji, zanim pomyślisz o tym, jak je wszystkie połączyć.

+0

Widzę twoją sprawę, ale zakładam, że nadal istnieją wspólne scenariusze/wzorce integracji? Może jestem trochę zbyt optymistyczny, że znajdę jeden zasób, który akurat obejmuje dokładnie to połączenie! –

1

Ponieważ jesteś z VSS tła, spójrz na SourceGear Vault i SourceGear Fortress. Jeśli robią to, co chcesz, będą szybciej się uczyć, ponieważ są przeznaczone dla osób z nastawieniem VSS.

Myślę, że mogą nawet być bezpłatne dla małych zespołów.

(Będziesz nadal chcą korzystać NUnit do testowania, jednak chciałbym uzyskać kontroli kodu źródłowego i ciągła integracja załatwić w pierwszej kolejności.)

Jeśli pójdziesz z Subversion znajdziesz to jest bardzo stabilny i więcej wtedy może spełnić potrzeby większości zespołu. Zajrzyj na stronę TortoiseSVN, aby uzyskać łatwy interfejs użytkownika od Subversion

+0

Dzięki, przeczytałem dobre rzeczy o Subversion i nie mam nic przeciwko wychodzeniu z nastawienia VSS :-) Rozumiem, że twój punkt widzenia na temat uzyskania SCC i ciągłej integracji został posortowany jako pierwszy, ale właśnie wyłożyłem na bok to, co w tej chwili mógłbym objąć moją idealną książką . Ta książka może oczywiście nie istnieć! –

2

Nagrałem numer a video ilustrujący wszystkie podstawowe informacje, w tym ustawienia SubVersion, CruiseControl.NET. Nawet zilustrowałem zepsutą kompilację. Narzędziem deweloperskim była Delphi, ale mogła to być VS.NET.

+0

Właśnie zaczynam uczyć się o CI, zobaczyłem twój post, zobaczyłem vid, i to było całkiem pomocne. Byłoby wspaniale, gdybyś nakreślił niektóre minimalne wymagania serwera (wygląda na to, że używałeś dev. Machine), ale to jest coś, co będę w stanie wymyślić. Dobra robota! – Dave