Subversion

Subversion (SVN) to systemem kontroli wersji, następca wysłuzonego CVS. Jest to bardzo pomocne narzędzie, szczególnie dla programistów przy grupowej pracy nad projektem. Bardzo dobrze nadaje się także dla pojedynczego użytkownika. Jego głównym celem jest kontrola wersji, rejestrowanie wszystkich zmian w projekcie, każdym pliku, łatwe przejście do starszych wersji, etc.

Nie ma co więcej przyciemniać, wystarczy skorzystać z google, aby poczytać więcej :P

Można zacząć od informacji zawartych w Wikipedii dotyczących Subversiona, na Wikibook też znajdzie się cosik, mały podręcznik o Subversionie.

Paweł Niewiadomski na swoim blogu opublikował artykuł Subversion – szybkie wprowadzenie, bardzo ciekawy i wprowadzający.
Na Gery.Linux także, co nieco informacji o Subversionie.

Jak na razie to same informacje dotyczące wersji dostępnej spod konsoli, tekstowej, gdzie trzeba znać te wszystkie polecenia i komendy.
A co z szarym użytkownikiem, który chciałby skorzystać z dobrodziejstw SVN?
Oni tez mogą skorzystać z SVN w bardzo łatwy sposób, w graficznej ładnej oprawie :)

Szybkie wprowadzenie do SVN – atrykuł Tomasza Przechlewskiego o SVN w systemie Windows i Linux.

Artykuł Macieja Miąsika o dźwięcznym tytule Subversion dla każdego przedstawia w krokach „zabawę” z SVN przy wykorzystaniu programu TortoiseSVN.
Dla wszystkich, którzy chcą szybko opanować podstawowe procedury korzystania z repozytorium SVN polecam właśnie ten artykuł.

Sam właśnie zainstalowałem TortoiseSVN, spolszczyłem i zaczyna mi się podobać, a prostota korzystania z SVN wręcz sama przemawia do tego, aby stało się ono głównym narzędziem w zarządzaniu projektami i ich wersjami.
I tak też się stanie…

Trochę się nagłówkowałem z keywords’ami pod tym narzędziem. W plikach miałem wstawione odpowiednie „tagi„, ale niestety przy zatwierdzaniu zmian SVN nie podmieniał ich na odpowiednie informacje.
Namęczyłem się zanim doszedłem do sedna, a bardzo mi zależało głownie na odpowiednim wstawianiu aktualnego ciągu $Id$ jak to miało miejsce w CVSie:

$Id: index.php,v 1.0.1 2006/06/23 15:38:40 malcom Exp $

TortoiseSVN integruje się z Eksploratorem Windowa, wstawia dodatkowe pozycje w menu kontekstowym myszki, na plikach i katalogach oraz dodatkową zakładkę w właściwościach pliku lub folderu kopii roboczej projektu.

Właśnie żeby

$Id$

zostało zamienione na

$Id: engine.php 8 2006-07-06 00:15:26Z MalCom $

trzeba nie tylko w plikach wstawić odpowiednie tagi, ale również w tej zakładce w właściwościach ustawić z jakich tagów się skorzysta w danym pliku, czy projekcie. Czyli mówiąc prosto trzeba ustawić, jakie keywords’y mają być zamieniane na odpowiednie teksty informacyjne.
Można ustawić dla każdego pliku różne tagi (np. dla 2 plików $Author$ i $Date$ a dla innych samo $Id$), albo dla wszystkich rekurencyjnie w właściwościach folderu roboczego.

Trac jest system zarządzania projektami, posiadającym wbudowaną przeglądarkę repozytoriów SVN, issue tracker i Wiki.

Szukałem w necie darmowych serwerów hostingujących projekty właśnie z Trac’em i SVN.
Nie podobają mi się zbytnio systemy typu SourceForge.net czy berliOS.de, a Trac ładnie wygląda i jest dużo „przyjemniejszy”.

Znalazłem 2 darmowe hostingi projektów z SVN i systemem Trac :)

  • OpenSVN.csie.org – założony przez grupę studentów z Tajwanu, którzy udostępnili za darmo serwer gdzie można umieścić swój projekt. Wymagań nie ma żadnych (przynajmniej ja żądnych nie znalazłem), więc każdy może się zarejestrować.
  • TracOS – darmowy hosting dla projektów open source’woych z SVN, Trac, emailem, shellem…

To tyle wśród darmowych serwerów z Trac’em. W sieci jest wiele hostingów dla projektów, ale niestety na innych systemach, a mi się Trac bardzo spodobał.
Pewnie kilka projektów się znajdzie na jednym z tych serwerów :)

Warto jeszcze wspomnieć o innym serwisie/serwerze, do tego polskim, który może nie udostępnia Traca, ale całą inną gamę potrzebnych narzędzi (w tym serwer Jabbera) dla małego, średniego projektu i to za free :)
Jest to core.segfault.pl.

Jedno przemyślenie nt. „Subversion”

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *