1. Cześć Gość. Przeglądasz forum dzięki firmie QNAP oraz zespołowi QNAP Club Polska.

Przeniesienie repo na Synka - od początku krok po kroku

Dyskusja w 'SVN Server' rozpoczęta przez użytkownika Fixer, 2 Wrzesień 2016.

Ładowanie...
Tagi:
  1. Fixer
    Offline

    Fixer Systems Admin... Q's Expert

    Dołączył:
    2 Luty 2013
    Wiadomości:
    369
    Miejscowość:
    TG
    Local Time:
    10:26
    Oceny:
    +6 / 0 / -0
    Followers:
    2
    QNAP:
    null
    Synology:
    DS1515+
    Ethernet:
    10 Mbps
    null 10 Mbps
    Zacznę od tego że męcząc ten temat nie natrafiłem po drodze na żadne problemy czy bariery - wiec zachęcam do poświęcenia chwilki bo się opłaci...

    Trzy pytania wstępne:
    1. Gdzie fizycznie znajdują się repozytoria SVN na nasie?
    2. Jak przenieś repo z dysku twardego komputera do NAS'a?
    3. jak rozpoznać użytą wersję bazy danych w repo żeby wiedzieć czy ją aktualizować czy nie?

    Opowiem sobie sam:
    1. Tam gdzie je wskazaliśmy przy instalacji, u mnie domyślnie czyli
    Kod (Text):
    1. /volume1/svn/

    3. Szukaj pliku
    Kod (Text):
    1. repo_moje/db/format
    odczytujemy go notatnikiem i może być zapisana w nim wersja 2/3/4/5/6/7...
    Dla przykładu moje stare repo miało tak:
    Kod (Text):
    1. 4
    2. layout sharded 1000
    a nowe repo w synku ma tak:
    Kod (Text):
    1. 7
    2. layout sharded 1000
    3. addressing logical

    2. Zacznę od tego, że są na to dwie prawilne metody (obie przetestowałem i są skuteczne). Szybsza okazała się wersja pierwsza. Bo zabawa z backupem jest czasochłonna.
    W przypadku gdy repo NIE jest zbyt stare (np. wersja 4 pochodząca z tortoise 1.6 do wersji 7) można robić UPGRADE bazy z CLI przez WinSCP
    Kod (Text):
    1. cd volume1/svn
    2. svnadmin upgrade repo_moje
    Screenshot_3.

    Jeśli się nie uda to jest inna metoda - przywracanie z kopii zapasowej, którą sami wykonamy
    1. Zaczynamy od zrobienia kopii starego działającego repozytorium (w Windowsie):
    składnia:
    Kod (Text):
    1. svnadmin dump path > backup.dump
    w praktyce:
    Kod (Text):
    1. D:\Subversion\bin\svnadmin dump "D:\svn_repositorys\repo_moje" > "D:\svn_repositorys\repo_moje.dump"
    2. Tworzymy nowe repozytorium na Synku z linii komend (lepiej zrobic to przez GUI SVN z synka)
    Kod (Text):
    1. cd volume1/svn
    2. svnadmin create repo_moje
    Screenshot_2.

    3. Przywracamy kopię.
    Wchodzimy przez WinSCP (włączone SSH na synku) i wysyłamy do katalogu SVN plik *.dump
    Otwieramy konsolkę CLI i wklepujesz...
    składnia:
    Kod (Text):
    1. svnadmin load repo_moje< repo_moje.dump
    w praktyce (windows):
    Kod (Text):
    1. D:\Subversion\bin\svnadmin load "D:\svn_repositorys\repo_moje" < "D:\svn_repositorys\repo_moje.dump"
    w praktyce (nas):
    Kod (Text):
    1. cd volume1/svn
    2. svnadmin load repo_moje < repo_moje.dump
    Screenshot_1.


    4. sprawdzamy konfigurację i wprowadzamy niezbędne poprawki
    a) repo_moje/conf/svnserve.conf
    Kod (Text):
    1.  
    2. [general]
    3. anon-access =none
    4. auth-access = write
    5. password-db = passwd
    b) repo_moje/conf/passwd
    Kod (Text):
    1. [users]
    2. nasztajnylogin = jakiestajnehaslo
    5. Na końcu pobieramy zdalnie projekt do edycji z serwera SVN Synology (checkout)
    Kod (Text):
    1. svn co --username nasztajnylogin --password="jakiestajnehaslo" svn://ADRES_IP/repo_moje/.
    Screenshot_4.

    Pomocne ŹRÓDŁA przy opracowywaniu:
    svnadmin upgrade
    How to find out Subversion repository version?

    ------------------------------------------------------------
    update:
    A teraz nieco szybsza metoda wstawiania plików projektowych www do naszej czystej bazy SVN na synku:
     

Poleć tę stronę