Open Source w służbie developerom

Transkrypt

Open Source w służbie developerom
Open Source w służbie developerom
Open Source w służbie developerom
Piotr Ślatała
5 grudnia 2011
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wstęp
Plan prezentacji
Agenda
Dyskusja problemu
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wstęp
Plan prezentacji
Agenda
Dyskusja problemu
Etapy
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wstęp
Plan prezentacji
Agenda
Dyskusja problemu
Etapy
Przykłady
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wstęp
Plan prezentacji
Agenda
Dyskusja problemu
Etapy
Przykłady
Pytania
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Dyskusja problemu
Projekt?
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Dyskusja problemu
Projekt?
Realizujemy projekt
Jakie narzędzia są niezbędne w celu utworzenia aplikacji?
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Dyskusja problemu
Projekt?
Realizujemy projekt
Jakie narzędzia są niezbędne w celu utworzenia aplikacji?
Wygodnie
Które z nich są niezbędne, by tworzenie programu odbywało się
sprawnie i była nad nim kontrola?
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Dyskusja problemu
Projekt?
Realizujemy projekt
Jakie narzędzia są niezbędne w celu utworzenia aplikacji?
Wygodnie
Które z nich są niezbędne, by tworzenie programu odbywało się
sprawnie i była nad nim kontrola?
W zespole
Które z nich zapewniają sprawną współpracę w zespole?
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Oczekiwania
Oczekiwania
Bezpieczeństwo kodu
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Oczekiwania
Oczekiwania
Bezpieczeństwo kodu
Możliwość powrotu (porównania) wersji poprzedniej
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Oczekiwania
Oczekiwania
Bezpieczeństwo kodu
Możliwość powrotu (porównania) wersji poprzedniej
Współbieżna praca
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Oczekiwania
Oczekiwania
Bezpieczeństwo kodu
Możliwość powrotu (porównania) wersji poprzedniej
Współbieżna praca rozwiązywanie konfliktów
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Oczekiwania
Oczekiwania
Bezpieczeństwo kodu
Możliwość powrotu (porównania) wersji poprzedniej
Współbieżna praca rozwiązywanie konfliktów
Różne wersje tego samego programu
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Rozwiązania
Scentralizowane
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Rozwiązania
Scentralizowane
Rozproszone
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Scentralizowane
pełna kontrola uprawnień
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Scentralizowane
pełna kontrola uprawnień
pewność, że kod znajduje się w jednym miejscu
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Scentralizowane
pełna kontrola uprawnień
pewność, że kod znajduje się w jednym miejscu
brak możliwości wersjonowania kodu „offline”
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Scentralizowane
pełna kontrola uprawnień
pewność, że kod znajduje się w jednym miejscu
brak możliwości wersjonowania kodu „offline”
SVN
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Scentralizowane
pełna kontrola uprawnień
pewność, że kod znajduje się w jednym miejscu
brak możliwości wersjonowania kodu „offline”
SVN
CVS
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Rozproszone
Możliwość wersjonowania kodu „offline”
Utrudnione zarządzanie uprawnieniami
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Rozproszone
Możliwość wersjonowania kodu „offline”
Utrudnione zarządzanie uprawnieniami
Podszywanie się?
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Rozproszone
Możliwość wersjonowania kodu „offline”
Utrudnione zarządzanie uprawnieniami
Podszywanie się?
Konflikty
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Rozproszone
Możliwość wersjonowania kodu „offline”
Utrudnione zarządzanie uprawnieniami
Podszywanie się?
Konflikty
Mercurial
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Rozproszone
Możliwość wersjonowania kodu „offline”
Utrudnione zarządzanie uprawnieniami
Podszywanie się?
Konflikty
Mercurial
Bazaar
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Rozproszone
Możliwość wersjonowania kodu „offline”
Utrudnione zarządzanie uprawnieniami
Podszywanie się?
Konflikty
Mercurial
Bazaar
Git
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Git - serwer
Git (filesystem)
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Git - serwer
Git (filesystem)
Gitolite
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Git - serwer
Git (filesystem)
Gitolite
Gitosis
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Gitolite
Rozbudowane zarządzanie uprawnieniami
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Gitolite
Rozbudowane zarządzanie uprawnieniami
Nie wymaga specjalnych uprawnień – konto SSH w systemie
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Gitolite
Rozbudowane zarządzanie uprawnieniami
Nie wymaga specjalnych uprawnień – konto SSH w systemie
Repozytorium zarządzane przez repozytorium
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Gitolite
Rozbudowane zarządzanie uprawnieniami
Nie wymaga specjalnych uprawnień – konto SSH w systemie
Repozytorium zarządzane przez repozytorium
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Instalujemy Gitolite
http://progit.org/book/ch4-8.html
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Instalujemy Gitolite
http://progit.org/book/ch4-8.html
http://github.com
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Wersjonowanie
Rozwiązania
Instalujemy Gitolite
http://progit.org/book/ch4-8.html
http://github.com
https://bitbucket.org/
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Zadania + wiedza
Zadania + wiedza
Oczekiwania
Backlog (zarządzanie funkcjami)
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Zadania + wiedza
Zadania + wiedza
Oczekiwania
Backlog (zarządzanie funkcjami)
Bugtrack (zarządzanie błędami)
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Zadania + wiedza
Zadania + wiedza
Oczekiwania
Backlog (zarządzanie funkcjami)
Bugtrack (zarządzanie błędami)
Wiedza na temat projektu (np. architektura, decyzje
projektowe)
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Zadania + wiedza
Zadania + wiedza
Rozwiązania OpenSource
Trac
Trac is an enhanced wiki and issue tracking system for software
development projects.
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Zadania + wiedza
Zadania + wiedza
Rozwiązania OpenSource
Trac
Trac is an enhanced wiki and issue tracking system for software
development projects.
Tworzenie ticketów
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Zadania + wiedza
Zadania + wiedza
Rozwiązania OpenSource
Trac
Trac is an enhanced wiki and issue tracking system for software
development projects.
Tworzenie ticketów
Integracja z repozytoriami
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Zadania + wiedza
Zadania + wiedza
Rozwiązania OpenSource
Trac
Trac is an enhanced wiki and issue tracking system for software
development projects.
Tworzenie ticketów
Integracja z repozytoriami
Wiki
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Zadania + wiedza
Zadania + wiedza
Rozwiązania OpenSource
Trac
Trac is an enhanced wiki and issue tracking system for software
development projects.
Tworzenie ticketów
Integracja z repozytoriami
Wiki
Pluginy
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Zadania + wiedza
Zadania + wiedza
Rozwiązania OpenSource
Trac
Trac is an enhanced wiki and issue tracking system for software
development projects.
Tworzenie ticketów
Integracja z repozytoriami
Wiki
Pluginy
Python
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Zadania + wiedza
Zadania + wiedza
Rozwiązania OpenSource
Redmine
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Zadania + wiedza
Zadania + wiedza
Rozwiązania OpenSource
Redmine
Tworzenie ticketów
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Zadania + wiedza
Zadania + wiedza
Rozwiązania OpenSource
Redmine
Tworzenie ticketów
Integracja z repozytoriami
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Zadania + wiedza
Zadania + wiedza
Rozwiązania OpenSource
Redmine
Tworzenie ticketów
Integracja z repozytoriami
Wiki
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Zadania + wiedza
Zadania + wiedza
Rozwiązania OpenSource
Redmine
Tworzenie ticketów
Integracja z repozytoriami
Wiki
Kalendarz
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Zadania + wiedza
Zadania + wiedza
Rozwiązania OpenSource
Redmine
Tworzenie ticketów
Integracja z repozytoriami
Wiki
Kalendarz
Wykresy (diagramy) Gantta
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Zadania + wiedza
Zadania + wiedza
Rozwiązania OpenSource
Redmine
Tworzenie ticketów
Integracja z repozytoriami
Wiki
Kalendarz
Wykresy (diagramy) Gantta
Pluginy
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Zadania + wiedza
Zadania + wiedza
Rozwiązania OpenSource
Redmine
Tworzenie ticketów
Integracja z repozytoriami
Wiki
Kalendarz
Wykresy (diagramy) Gantta
Pluginy
Ruby
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Zadania + wiedza
Zadania + wiedza
Rozwiązania OpenSource
Redmine
Tworzenie ticketów
Integracja z repozytoriami
Wiki
Kalendarz
Wykresy (diagramy) Gantta
Pluginy
Ruby
http://demo.redmine.org/
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Zadania + wiedza
Zadania + wiedza
Instalacja redmine 1.2
Instalujemy rvm:
b as h < <( c u r l −s h t t p s : / / raw . g i t h u b . com/ w a y n e e s e g u i n / rvm / m a s t e r / b i n s c r i p t s /rvm− i n s t a l l e r )
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Zadania + wiedza
Zadania + wiedza
Instalacja redmine 1.2
Instalujemy rvm:
b as h < <( c u r l −s h t t p s : / / raw . g i t h u b . com/ w a y n e e s e g u i n / rvm / m a s t e r / b i n s c r i p t s /rvm− i n s t a l l e r )
Wyłączamy i włączamy terminal, następnie instalujemy ruby:
rvm i n s t a l l 1 . 8 . 7
rvm u s e 1 . 8 . 7 −−d e f a u l t
rvm u s e 1 . 8 . 7
# j e z e l i rubygems >= 1 . 7
rvm rubygems 1 . 6 . 2
# j e z e l i rake 0 . 9 . x
gem u n i n s t a l l r a k e −v 0 . 9 . 2
gem i n s t a l l r a k e −v = 0 . 8 . 7
gem i n s t a l l r a i l s −v = 2 . 3 . 1 1
s v n co h t t p : / / r e d m i n e . r u b y f o r g e . o r g / s v n / b r a n c h e s /1.2 − s t a b l e r ed m in e −1.2
# wchodzimy do k a t a l o g u z r e d m i n e
# w k a t a l o g u c o n f i g m o d y f i k u j e m y d a t a b a s e s . yml . e x a m p l e o r a z c o n f i g u r a t i o n . yml . e x a m p l e
rake g e n e r a t e s e s s i o n s t o r e
RAILS ENV=p r o d u c t i o n r a k e db : m i g r a t e
RAILS ENV=p r o d u c t i o n r a k e r e d m i n e : l o a d d e f a u l t d a t a
r u b y s c r i p t / s e r v e r w e b r i c k −e p r o d u c t i o n
http://www.redmine.org/projects/redmine/wiki/
RedmineInstall
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Automatyczne zarządzanie jakością
Oczekiwania
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Automatyczne zarządzanie jakością
Oczekiwania
Kod w repozytorium kompiluje się
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Automatyczne zarządzanie jakością
Oczekiwania
Kod w repozytorium kompiluje się
Kod stabilny działa poprawnie
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Automatyczne zarządzanie jakością
Oczekiwania
Kod w repozytorium kompiluje się
Kod stabilny działa poprawnie
Wykrywanie błędów programistycznych
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Automatyczne zarządzanie jakością
Wymagania
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Automatyczne zarządzanie jakością
Wymagania
Pokrycie kodu testami
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Automatyczne zarządzanie jakością
Wymagania
Pokrycie kodu testami
Kompilacja
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Automatyczne zarządzanie jakością
Wymagania
Pokrycie kodu testami
Kompilacja, albo jeszcze lepsze pokrycie kodu testami
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Automatyczne zarządzanie jakością
Jenkins
Ciągła integracja
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Automatyczne zarządzanie jakością
Jenkins
Ciągła integracja
Obserwuje repozytorium
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Automatyczne zarządzanie jakością
Jenkins
Ciągła integracja
Obserwuje repozytorium
Uruchamia „builda” po zmianach
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Automatyczne zarządzanie jakością
Jenkins
Ciągła integracja
Obserwuje repozytorium
Uruchamia „builda” po zmianach
Obserwuje rezultat builda
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Oczekiwania
Kod w repozytorium jest „przyzwoitej” jakości
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Oczekiwania
Kod w repozytorium jest „przyzwoitej” jakości
Wiedza programistyczna wymieniana w zespole
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Systemy do instpekcji kodu
Inspekcja kodu
(code review) polega na tym, iż wybrany programista(ści) analizuje
przesłany kod.
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Systemy do instpekcji kodu
Inspekcja kodu
(code review) polega na tym, iż wybrany programista(ści) analizuje
przesłany kod.
Efekty:
Znajomość organizacji projektu, wymiana wiedzy
programistycznej
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Systemy do instpekcji kodu
Inspekcja kodu
(code review) polega na tym, iż wybrany programista(ści) analizuje
przesłany kod.
Efekty:
Znajomość organizacji projektu, wymiana wiedzy
programistycznej
Lepsza jakość kodu
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Systemy do instpekcji kodu
Inspekcja kodu
(code review) polega na tym, iż wybrany programista(ści) analizuje
przesłany kod.
Efekty:
Znajomość organizacji projektu, wymiana wiedzy
programistycznej
Lepsza jakość kodu
Mniejsza ilość błędów
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Systemy do instpekcji kodu
Inspekcja kodu
(code review) polega na tym, iż wybrany programista(ści) analizuje
przesłany kod.
Efekty:
Znajomość organizacji projektu, wymiana wiedzy
programistycznej
Lepsza jakość kodu
Mniejsza ilość błędów
Poprawa umiejętności programistycznych
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Systemy do instpekcji kodu
Inspekcja kodu
(code review) polega na tym, iż wybrany programista(ści) analizuje
przesłany kod.
Efekty:
Znajomość organizacji projektu, wymiana wiedzy
programistycznej
Lepsza jakość kodu
Mniejsza ilość błędów
Poprawa umiejętności programistycznych
Kiedy?
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Systemy do instpekcji kodu
Inspekcja kodu
(code review) polega na tym, iż wybrany programista(ści) analizuje
przesłany kod.
Efekty:
Znajomość organizacji projektu, wymiana wiedzy
programistycznej
Lepsza jakość kodu
Mniejsza ilość błędów
Poprawa umiejętności programistycznych
Kiedy?
Kod już jest w repozytorium
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Systemy do instpekcji kodu
Inspekcja kodu
(code review) polega na tym, iż wybrany programista(ści) analizuje
przesłany kod.
Efekty:
Znajomość organizacji projektu, wymiana wiedzy
programistycznej
Lepsza jakość kodu
Mniejsza ilość błędów
Poprawa umiejętności programistycznych
Kiedy?
Kod już jest w repozytorium
Kod jeszcze nie znajduje się w repozytorium
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Rozwiązania
Zależą od repozytorium, które stosujemy
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Rozwiązania
Zależą od repozytorium, które stosujemy
Przesyłanie mailem?
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Rozwiązania
Zależą od repozytorium, które stosujemy
Przesyłanie mailem?
Przeglądanie za pomocą dedykowanej aplikacji
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Gerrit
Przegląd kodu przed umieszczeniem we właściwym
repozytorium
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Gerrit
Przegląd kodu przed umieszczeniem we właściwym
repozytorium
Instalacja gerrita: java -jar gerrit.war init
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Gerrit
Przegląd kodu przed umieszczeniem we właściwym
repozytorium
Instalacja gerrita: java -jar gerrit.war init
Konfiguracja uprawnień
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Gerrit
Przegląd kodu przed umieszczeniem we właściwym
repozytorium
Instalacja gerrita: java -jar gerrit.war init
Konfiguracja uprawnień
Zdefiniowanie osób które mogą „submitować” sprawdzony kod
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Gerrit
Przegląd kodu przed umieszczeniem we właściwym
repozytorium
Instalacja gerrita: java -jar gerrit.war init
Konfiguracja uprawnień
Zdefiniowanie osób które mogą „submitować” sprawdzony kod
Zdefiniowanie osób / automatów, które mogą weryfikować kod
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Gerrit
Przegląd kodu przed umieszczeniem we właściwym
repozytorium
Instalacja gerrita: java -jar gerrit.war init
Konfiguracja uprawnień
Zdefiniowanie osób które mogą „submitować” sprawdzony kod
Zdefiniowanie osób / automatów, które mogą weryfikować kod
Zdefiniowanie osób, które mogą przeprowadzać inspekcję
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Gerrit
Przegląd kodu przed umieszczeniem we właściwym
repozytorium
Instalacja gerrita: java -jar gerrit.war init
Konfiguracja uprawnień
Zdefiniowanie osób które mogą „submitować” sprawdzony kod
Zdefiniowanie osób / automatów, które mogą weryfikować kod
Zdefiniowanie osób, które mogą przeprowadzać inspekcję
Przeglądanie za pomocą dedykowanej aplikacji
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Gerrit - wysyłanie zmian - przykładowy schemat działania
Gerrit emuluje repozytorium:
g i t r e m o t e add g e r r i t s s h : / / u z y t k o w n i k @ s e r w e r g e r r i t : 2 9 4 1 8 / n a z w a r e p o z y t o r i u m
Utwórz „feature-branch”, czyli gałąź z funkcją:
g i t b r a n c h moja−nazwa−b r a n c h a
g i t c h e c k o u t moja−nazwa−b r a n c h a
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Gerrit - wysyłanie zmian - przykładowy schemat działania
Gerrit emuluje repozytorium:
g i t r e m o t e add g e r r i t s s h : / / u z y t k o w n i k @ s e r w e r g e r r i t : 2 9 4 1 8 / n a z w a r e p o z y t o r i u m
Utwórz „feature-branch”, czyli gałąź z funkcją:
g i t b r a n c h moja−nazwa−b r a n c h a
g i t c h e c k o u t moja−nazwa−b r a n c h a
Dokonaj i wcommituj zmiany
g i t add .
g i t commit −m ” Wiadomosc ”
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Gerrit - wysyłanie zmian - przykładowy schemat działania
Gerrit emuluje repozytorium:
g i t r e m o t e add g e r r i t s s h : / / u z y t k o w n i k @ s e r w e r g e r r i t : 2 9 4 1 8 / n a z w a r e p o z y t o r i u m
Utwórz „feature-branch”, czyli gałąź z funkcją:
g i t b r a n c h moja−nazwa−b r a n c h a
g i t c h e c k o u t moja−nazwa−b r a n c h a
Dokonaj i wcommituj zmiany
g i t add .
g i t commit −m ” Wiadomosc ”
Wyślij zmiany na serwer:
g i t push g e r r i t moja−nazwa−b r a n c h a : r e f s / f o r / m a s t e r
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Gerrit - wysyłanie zmian - poprawki
Znajdujemy się ciągle w naszym branchu, wprowadzamy nowe
zmiany
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Gerrit - wysyłanie zmian - poprawki
Znajdujemy się ciągle w naszym branchu, wprowadzamy nowe
zmiany
Commitujemy nowe zmiany
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Gerrit - wysyłanie zmian - poprawki
Znajdujemy się ciągle w naszym branchu, wprowadzamy nowe
zmiany
Commitujemy nowe zmiany
Złączamy zmiany do jednego commita:
g i t r e b a s e − i HEAD˜2
# w drugim c o m mi c i e u st a w i a m y ” s q u a s h ”
# k o p i u j e m y c ha n ge i d z g e r r i t a do o p i s u commita
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Jakość
Ręczne zarządzanie jakością
Gerrit - wysyłanie zmian - poprawki
Znajdujemy się ciągle w naszym branchu, wprowadzamy nowe
zmiany
Commitujemy nowe zmiany
Złączamy zmiany do jednego commita:
g i t r e b a s e − i HEAD˜2
# w drugim c o m mi c i e u st a w i a m y ” s q u a s h ”
# k o p i u j e m y c ha n ge i d z g e r r i t a do o p i s u commita
Wysyłamy zmiany na serwer
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Artefakty
Artefakty
Osiągnięcie celu
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Artefakty
Artefakty
Osiągnięcie celu
Artefakt
Niezależny produkt zapewniający wybraną funkcjonalność. Jar, dll,
zip, rar.
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Artefakty
Artefakty
Osiągnięcie celu
Artefakt
Niezależny produkt zapewniający wybraną funkcjonalność. Jar, dll,
zip, rar.
Publikacja artefaktu
Starając się zapewnić stabilność kodu w repozytorium oraz jego
jakość, możemy starać się automatycznie wydawać i/lub
publikować artefakty.
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Podsumowanie
Inne
Pominięte zagadnienia
Użytkownicy - LDAP
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Podsumowanie
Inne
Pominięte zagadnienia
Użytkownicy - LDAP
Build script
Maven
Zarządzanie zależnościami
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Podsumowanie
Inne
Pominięte zagadnienia
Użytkownicy - LDAP
Build script
Maven
Zarządzanie zależnościami
Fazy
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Podsumowanie
Inne
Pominięte zagadnienia
Użytkownicy - LDAP
Build script
Maven
Zarządzanie zależnościami
Fazy
Złożona logika
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Podsumowanie
Inne
Pominięte zagadnienia
Użytkownicy - LDAP
Build script
Maven
Zarządzanie zależnościami
Fazy
Złożona logika
Rakefile (Rake)
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Podsumowanie
Inne
Pominięte zagadnienia
Użytkownicy - LDAP
Build script
Maven
Zarządzanie zależnościami
Fazy
Złożona logika
Rakefile (Rake)
Makefile (make)
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Podsumowanie
Inne
Pominięte zagadnienia
Użytkownicy - LDAP
Build script
Maven
Zarządzanie zależnościami
Fazy
Złożona logika
Rakefile (Rake)
Makefile (make)
psake
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Podsumowanie
Podsumowanie
Pytania
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Podsumowanie
Podsumowanie
Pytania
[email protected]
Piotr Ślatała
Open Source w służbie developerom
Open Source w służbie developerom
Podsumowanie
Podsumowanie
Dziękuję
Dziękuję za uwagę
Piotr Ślatała
Open Source w służbie developerom

Podobne dokumenty