SVN sojusz, partnerstwo, współpraca



Podobne dokumenty
Michał (plucho) Subversion Wykorzystanie i administracja repozytorium

Systemy zarządzania wersjami

Wprowadzenie do systemu wersjonowania svn

SUBVERSION TOMASZ ŁUKASZUK

System kontroli wersji - wprowadzenie. Rzeszów,2 XII 2010

Co zostanie wypisane na ekranie? (1)

Programowanie I

System kontroli wersji Git

Assembla.com zajęcia 1

System kontroli wersji git

Ćwiczenia 9: Zarządzanie konfiguracją Zadania:

GIT. System Kontroli wersji GIT. Rafał Kalinowski

Subversion - jak dziaªa

Subversion. System wersjonowania projektów. Instytut Informatyki Politechnika Poznańska

KOŁO NAUKOWE INFORMATYKÓW SYSTEMY KONTROLI WERSJI CZ.1 16 XII 2009 OPRACOWAŁ: PRZEMYSŁAW PARDEL

System zarządzania wersjami I Subversion

Git - podstawy. Błażej Kowalczyk. Koło Naukowe Robotyków KoNaR. 7 listopada 2014

CVS system kontroli wersji

Środowisko programisty. Środowisko programisty 1/35

Konfiguracja i administracja systemem kontroli wersji SVN

Microsoft Visual SourceSafe uproszczona instrukcja użytkowania

Subversion jest systemem kontroli wersji

Git rozproszony system kontroli wersji

Rozproszony system kontroli wersji GIT. Piotr Macuk

Partnerzy: Laboratorium 15

SVN - wprowadzenie. 1 Wprowadzenie do SVN. 2 U»ywanie SVN. Adam Krechowicz. 16 lutego Podstawowe funkcje. 2.1 Windows

Adam Wójs <adam[shift+2]wojs.pl> git --wprowadzenie

Systemy Kontroli Wersji

Zapoznanie się z konfiguracją i zarządzaniem serwerem Samba.

git krótki przewodnik

System kontroli wersji, system zarządzania kodem źródłowym

Zarządzanie projektami informatycznymi

Systemy kontroli wersji git od wewnatrz Użycie gita Koniec. git. Rozproszony system kontroli wersji. sphere.pl. Koło Naukowe Sfera

Platforma GitHub. 1 Cel laboratoriów. 2 GitHub. 2.1 Git. źródeł.

Projektowanie oprogramowania systemów NARZĘDZIA PRACY GRUPOWEJ, KONTROLI WERSJI, DOKUMENTOWANIA I ŚLEDZENIA BŁĘDÓW

Przygotowanie platformy projektowo-programowej

Techniki komputerowe w robotyce

Programowanie zespołowe

Konfiguracja serwera Apache jako serwera repozytorium kodu SVN

1 Tworzenie własnego zaproszenia dla powłoki bash

MBUM #2. Zarządzanie kopiami konfiguracji RouterOS. Jacek Rokicki

Gra-zabawka dla niemowląt przygotowana z użyciem w Unity 3D

SubVersion. Piotr Mikulski. SubVersion. P. Mikulski. Co to jest subversion? Zalety SubVersion. Wady SubVersion. Inne różnice SubVersion i CVS

Git i platforma GitHub

Nowy system kontroli wersji oprogramowania. Jacek Prucia

Jak usprawnić tworzenie i zarządzanie stroną na drupalu. Maciej Łukiański

SVN - wprowadzenie. 1 Wprowadzenie do SVN. 2 U»ywanie SVN. Adam Krechowicz 24 czerwca Podstawowe funkcje. 2.1 Windows

- udostępnić anonimowym użytkownikowi Internetu pliki przez serwer FTP,

Git, Bitbucket. Narzędzia i środowiska programistyczne. Laboratorium 2. Prowadzący: Kierunek: Semestr: Rok: Tomasz Gądek Informatyka Zimowy 2

Komendy Ubuntu MARCEL GAŃCZARCZYK 2T I 1

Serwer SAMBA UDOSTĘPNIANIE UDZIAŁÓW SIECIOWYCH PIOTR KANIA

Open Source w służbie developerom

MeetingHelper. Aplikacja Android ułatwiająca przekazywanie materiałów pomiędzy uczestnikami spotkania. Instrukcja obsługi dla programisty

Systemy kontroli wersji

Rys. 1. Widok uruchomienia polecenia apt-get install build-essential. Rys. 2. Widok uruchomienia polecenia apt-get install apache2

Konfiguracja SNMP z wykorzystaniem pakietu MRTG

System operacyjny Linux wybrane zagadnienia. Magda Mielczarek Katedra Genetyki Uniwersytet Przyrodniczy we Wrocławiu

Załącznik 1 instrukcje instalacji

Puppet Jak zacząć? Marcin Piebiak Linux Polska sp. z o.o.

Usługi sieciowe systemu Linux

Kopiowanie plików. 1. Z sieci wewnętrznej PK. System Windows

Załącznik 1 instrukcje instalacji

GIT. Rozproszony system kontroli wersji

BACKUP BAZ DANYCH FIREBIRD

Systemy kontroli wersji

BASH - WPROWADZENIE Bioinformatyka 4

WPROWADZENIE. Warto pamiętać o opcji autouzupełniania, której używamy naciskając klawisz [Tab]

System kontroli wersji SVN

Użytkowanie PortableGit w systemie Windows. 1. Najważniejsze informacje

1 Tworzenie własnego zaproszenia dla powłoki bash

Tak. Konrad Ktoso Malawski blog.project13.pl - SFI

DLA DREAMBOX & FLASHWIZARD

KONFIGURACJA CVS MAREK GRZEŚ

Wstęp do systemów wielozadaniowych laboratorium 02 Praca w systemie plików

Pracownia Informatyczna I ORGANIZACJA ZAJĘĆ, ZASADY ZALICZENIA

Pracownia Komputerowa wykład II

NDPHS Database. Instrukcje dla użytkowników. Wersja 1.0

Użycie pakietów instalacyjnych.msi w oprogramowaniu WYWIAD Plus

T: Zabezpieczenie dostępu do komputera.

Jak zatrudnić słonie do replikacji baz PostgreSQL

Drupal i GIT. Schemat pracy.

1. System kontroli wersji Instalacja programu kontroli wersji CVS

Teacher s Presentation Kit instrukcja

Programowanie zespołowe

Pracownia Komputerowa wyk ad II

SzukamNeta.pl Wicket, Maven, SVN, Hudson - tutorial

Samba, instalacja i konfiguracja

Programowanie Zespołowe

BASH - LINIA POLECEŃ. Bioinformatyka 2018/2019

Git, Bitbucket, IntelliJ IDEA

PRACOWNIA INFORMATYCZNA BASH - PODSTAWOWE INFORMACJE

Git instrukcja dla studentów

tworzenie katalogów Aby utworzyć nowy katalog wpisz: mkdir katalog1 Ta komenda utworzy katalog o nazwie katalog1.

INSTRUKCJA INSTALACJI APLIKACJI SEPI W SYSTEMIE LINUX. Dokumentacja zasilania aplikacji SEPI dla systemu Linux

Architektura i mechanizmy systemu

INSTRUKCJA OBSŁUGI DLA SIECI

Dokumentacja kompilacji źródeł aplikacji 1.0

MAMP Mac + Apache + MySQL + PHP. Kraków 8 czerwca 2009, Adam Strzelecki,

Zbuduj prywatną chmurę backupu w firmie. Xopero Backup. Centralnie zarządzane rozwiązanie do backupu serwerów i stacji roboczych

Konferencja metodyczna Doradcy proponują WODIiP Opole, 18 kwietnia 2011r.

Transkrypt:

SVN sojusz, partnerstwo, współpraca Bogusz Kowalski Wrocław, 16.03.2010 http://www.linuxacademy.pl 1

Coś o historii Zaczęło się od RCS w 1985... 1990 nadeszła era CVS... 2000 SVN 2

Po co system kontroli wersji? 2 osoby pobierają ten sam plik Jedna z nich wprowadza zmiany i wysyła na serwer Druga wprowadza własne zmiany i nadpisuje pracę pierwszej Kompromis: wprowadzenie blokad, Wada: niepotrzebna serializacja 3

Subversion jak to działa? 4

Możliwości SVN Pracujemy na lokalnej kopii roboczej Informacje przechowywane w katalogach.svn Szyfrowane połączenie (https, svn+ssh) Snapshoty repozytorium Wersjonowanie katalogów Commity atomowe: uda się wszystko lub nic Przechowywanie metadanych i atrybutów plików Mniejszy narzut sieciowy niż CVS Możliwa konwersja repozytorium CVS (cvs2svn) 5

Cykl pracy Pomoc: svn help (svn help <polecenie>) Pobranie zawartości repozytorium do kopii roboczej: svn checkout <url_do_repa> (svn co) Zaktualizowanie kopii roboczej: svn update (svn up) Operacje na plikach: svn [add rm mv cp] Wysłanie własnych zmian: svn commit (svn ci) 6

Praca z repozytorium cd. Informacje o stanie repozytorium: svn info Uzyskanie informacji o zmienionych plikach: svn status (svn st [ v]) Podgląd zmian: svn diff Podejrzenie historii komentarzy: svn log [ r x:x] Podejrzenie komentarzy: svn blame <plik> 7

Jak nie wkurzyć reszty zespołu słowo o rozwiązywaniu konfliktów Aby przywrócić poprzednią wersję pliku: svn revert Zablokowanie możliwości edycji: svn lock (svn unlock) Rozwiązywanie konfliktów svn resolve Jak się coś skaszani: svn cleanup 8

Branch, Snapshoty i Backup Utworzenie nowej gałęzi: svn branch Scalenie oddzielnej gałęzi z gałęzią HEAD: svn merge Przełączenie gałęzi HEAD na inną: svn switch Utworzenie kopii całego repozytorium do pliku: svnadmin dump Wykonaniu szybkiej kopii w nowym katalogu: svnadmin hotcopy Synchronizacja repozytoriów: svnsync 9

Klientów svn u nas dostatek Rapidsvn Esvn Kdesvn Vim + vcscommand Eclipse + Subversive SVN Team Provider Dla Windows: TortoiseSVN 10

Eclipse Plugin: Subversive SVN Team Provider W istniejącym projekcie: Team > Share Project > SVN Nowy projekt: File > New > Other > SVN > Project from SVN 11

Jak założyć repozytorium? mkdir /home/svn mkdir /home/svn/repos cd /home/svn/repos svnadmin create \\ /home/svn/repos/<nazwa_repozytorium> Adres URL do tak założonego repozytorium: file:///home/svn/repos/<nazwa_repozytorium> Uwaga! Do repozytorium mają dostęp tylko użytkownicy na tym serwerze (repo niedostępne przez internet) oraz muszą mieć prawa do odczytu/zapisu do plików samego repozytorium 12

Svnserve cd /home/svn/repos/<nazwa_rep> vim <nazwa_rep>/conf/svnserve.conf: [general] anon access = read # [none read write] auth access = write password db = passwd realm = Nazwa tego repozytorium vim <nazwa_rep>/conf/passwd: [users] # harry = harryssecret sally = sallyssecret user = password svnserve d r /home/svn/repos Adres URL do tak założonego repozytorium: svn://localhost/<nazwa_rep> Do repozytorium mają dostęp użytkownicy wymienieni w pliku conf/passwd. Prawa do odczytu/zapisu w repozytorium musi mieć demon svnserve 13

Svnserve + SSH = svn+ssh:// Wady poprzedniego rozwiązania: brak szyfrowania W jaki sposób się przed tym zabezpieczyć? Wykorzystać SSH! svn+ssh://localhost/home/svn/repos/<nazwa_rep> Ale... Uwaga na zmianę ścieżki (bezwzględna) Tylko konta systemowe Odwołujemy się jak do plików lokalnych potrzebne prawa do zapisu/odczytu 14

WebDAV dostęp przez http (https) Instalacja (Fedora): yum install httpd mod_dav_svn subversion W /etc/httpd/conf.d/subversion.conf zmieniamy ścieżki Utworzenie repozytorium: svnadmin create /home/svn/repos/<nazwa_rep> Wygenerowanie.htpasswd htpasswd cm.htpasswd <nazwa_użytkownika> W przypadku używania SELinux: chcon R h t httpd_sys_content_t /home/svn Restart httpd: service httpd restart Adres URL do tak założonego repozytorium: https://localhost/repos/<nazwa_rep> Do repozytorium dostęp mają użytkownicy wymienieni w.htpasswd, prawa do zapisu/odczytu plików repozytorium musi mieć demon httpd. 15

Darmowe repozytoria http://www.xp dev.com/ http://www.assembla.com http://www.bountysource.com/features http://code.google.com/hosting/ http://sourceforge.net/...gdy lubimy poczuć adrenalinę: http://opensvn.csie.org/ 16

Materiały http://subversion.apache.org/ Svnbook http://svnbook.red bean.com/ http://www.howtoforge.com/subversion_web_access_apache svn help http://www.eclipse.org/subversive/ http://www.vim.org/scripts/script.php?script_id=90 http://en.wikipedia.org/wiki/comparison_of_subversion_clients http://tortoisesvn.net/ 17

Dziękuję za uwagę SVN sojusz, partnerstwo, współpraca Bogusz Kowalski Wrocław, 16.03.2010 http://www.linuxacademy.pl 18

Dlaczego svnserve nie działał? Podczas prezentacji nie było możliwe uzyskanie dostępu do repozytorium przez svnserve z uwagi na to, że w ferworze walki autor konfigurując demona w conf/svnserve.conf odkomentował jedną linijkę za dużo: authz db = authz Plik ten pozwala określić szczegółowe reguły dostępu do poszczególnych folderów w repozytorium, a niedostosowanie go do swoich potrzeb skutkuje właśnie odebraniem sobie praw dostępu do repozytorium. 19