wiki:OurTutorial

Version 10 (modified by jhusak, 12 years ago) (diff)

--

Co jest co

SVN = Subversion = narzędzie do przechowywania plików wraz z historią zmian.

Trac = aplikacja przeglądarkowa, stanowiąca połączenie Wiki, widoku na SVN i ticketów.

Ticket = zgłoszony błąd lub pomysł, np. jhusak zgłosił tutaj pomysł wrzucenia ASMA, a ja to zrobiłem.

Język

Zaczynamy od wyłączenia polskich komunikatów Traca. Po prostu te tłumaczenia są niepełne, więc zamiast operować pokracznymi terminami wolę operować angielskimi.

Klikamy na górze Ustawienia, Język i np. English (United States), Zapisz zmiany.

Nawigacja w Tracu

Na górnej belce:

  • Wiki - wiadomo
  • Timeline - historia Traca + SVNa, np.
    • edycja strony wiki - wiadomo
    • Ticket - błędy i pomysły
    • Changeset to zmiana w SVN (np. w changeset 4 wrzuciłem ASMA)
  • Roadmap - na razie nie używamy
  • Browse Source - widok na SVN tylko do odczytu
  • View Tickets - tickety
  • New Ticket - tworzenie ticketa
  • Search - wiadomo

Podstawy SVN

SVN (oryg: subversion) to system kontroli wersji. W takich systemach nic nie ginie, historia zmian zawsze jest dostępna wraz z autorem, zawsze można wrócić do poprzedniej wersji, zawsze można naprawić błąd (patrz niżej). Ponadto nie ma możliwości zatwierdzenia (commit) pliku, który ktoś wcześniej zatwierdził w nowszej wersji (patrz niżej).

Jak widać na zakładce Browse Source, mamy trzy katalogi w SVN:

  • branches - to dla bardziej zaawansowanych, na razie nie będziemy używać
  • tags - tutaj są oznaczone wersje, np. wrzuciłem tutaj ASMA 3.4, można tu wrzucić wszystkie releasy i bety, po wrzuceniu nic tu nie zmieniamy
  • trunk - to jest główne miejsce pracy, możemy je przeglądać z Traca, ale znacznie wygodniej mieć jego kopię u siebie, o czym niżej

Każdy zapis do SVN jest rejestrowany w historii - widać to w Timeline. Zapis to changeset. Changeset ma:

  • kolejny numerek
  • login autora
  • datę wykonania zmiany
  • opis zmiany - krótki tekst wpisany przez autora, jak w wiki
  • zmiany (dodane/zmienione/usunięte pliki lub katalogi)

Przeglądać SVN możemy z Traca. Aby wprowadzać zmiany, potrzebujemy zainstalować u siebie klienta SVN. Pod Windows najpopularniejszy jest TortoiseSVN.

Instalacja TortoiseSVN

http://tortoisesvn.net/downloads.html Wybieramy 32-bit lub 64-bit zgodnie z naszymi Windowsami. Każda instalacja będzie dobra, jak kto woli można powyłączać wszystkie pierdoły typu dodatkowe ikony, narzędzia command-line i słowniki. Od teraz pod prawo-klikiem w Windows Explorer mamy dodatkowe menu TortoiseSVN.

Pobranie lokalnej kopii

Tworzymy na swoim dysku zwykły pusty katalog, gdzie będzie nasza kopia SVN. Dla ustalenia uwagi nazwę go asma-trunk (nazwa i położenie mogą być dowolne). Wchodzimy do tego katalogu, klikamy puste miejsce i TortoiseSVN / Checkout. W URL of repository wklejamy: svn://84.201.216.109/test/trunk Upewniamy się, że Checkout directory to dokładnie nasz pusty katalog. OK. Czekamy, aż się ściągnie.

Możemy normalnie używać ściągniętych plików - otwierać w playerach i edytować. Z kasowaniem, zmianą nazwy i przenoszeniem trzeba ostrożnie (patrz niżej).

Podstawowe operacje SVN

Prawo-klik na naszym katalogu daje następujące operacje:

  • SVN Update - ściągnięcie nowych zmian, jeśli jakieś były
  • SVN Show Log - historia (to samo co w Tracu, tylko tutaj same zmiany w SVN)
  • SVN Commit - wrzucenie naszych zmian na serwer; w przypadku problemów zrobić najpierw SVN Update (inni wykonali zmianę na tym samym pliku co my. W przypadku konfliktów, bo 2 osoby zmieniły ten sam plik w tym samym miejscu, rozwiązujemy je samodzielnie lub przy udziale kolegów).
  • SVN Revert - odzyskanie przypadkowo skasowanego lub przeniesionego pliku zgodnie ze strukturą repozytorium SVN

Jest jeszcze mnóstwo innych poleceń, ale są one używane dużo rzadziej.

Wprowadzanie zmian

Potraktujcie to, co jest, jako piaskownicę. Po oswojeniu się wszystkich zrobimy porządek i będziemy wprowadzać zmiany na poważnie.

jhusak': proponuję zrobić brancha z piaskownicą i tam się bawić, a w trunku niech siedzą rzeczy "już na poważnie".

Najprościej jest zmienić plik, który jest już w SVN. Zmieniamy pliki normalnie - np. możecie przeedytować pliki tekstowe w notatniku. Następnie wybieramy SVN Commit - wyświetli się lista zmienionych plików. Wpisujemy na górze opis i zatwierdzamy (opis jest ważny bo wtedy wiadomo, co było zmienione). Wpisujemy swój login i hasło. Po chwili zmiany są widoczne dla wszystkich (muszą oni zrobić SVN Update).

Aby dodać plik, normalnie umieszczamy go w katalogu, prawo-klik na nim i TortoiseSVN / Add. Następnie, aby wysłać dodane pliki, używamy SVN Commit jak wyżej.

Aby usunąć plik, nie usuwamy go normalnie. Zamiast tego TortoiseSVN / Delete, potem SVN Commit.

Aby zmienić nazwę pliku, TortoiseSVN / Rename, potem SVN Commit.

Aby skopiować/przenieść plik, przesuwamy go prawym klawiszem - pojawi się menu z możliwością kopiowania, przenoszenia i ew. zmiany nazwy przy tej okazji. Potem SVN Commit.

Tylko SVN Commit powoduje wysłanie naszych zmian na serwer. Inne operacje działają lokalnie na naszym komputerze.

Na początek to wystarczy. Są pytania?