SVN Polish Exercises

From Training Material
Jump to navigation Jump to search

THIS IS A DRAFT

This text may not be complete.


SVN for users

1. Uporzadkuj projekt slideshow tak, aby go przygotowac do zaimportowania w repozytorium subversion.
a) przygotuj odpowiednie katalogi i przenieś pliki (trunk, tags, branches)
b) stwórz katalog z projektami, kóre będą wersjonowane w subversion i zaimportuj uporządkowany projekt 
   (/home/quickstart/repos, svn import)
c) stwórz roboczą kopię(wc1) projektu slideshow, eksportując go z nowo utworzonego repozytorium
   (svn checkout)
d) wylistuj zawartość repo (svn list)


2. Stwórz kolejną roboczą kopię(wc2) projektu slideshow w innym miejscu na dysku (svn checkout)


3. W kopii roboczej z 1ćw. wprowadź zmiany:
a) uporządkuj pliki w katalogi, odpowiednio do rodzaju pliku:
- zdjecia (pic)
- java scrript (js)
b) sprawdź zmiany w kopii roboczej (svn status, svn diff)
c) wyślij zmiany do repozytorium (svn commit)
d) sprawdź stan kopii roboczej (svn status)
e) dodaj nowy plik "logo5.html", skopiuj do niego zawartość pliku logo.html 
   i zmień rodzaje rotacji zdjęć
f) sprawdź nowe zmiany w kopii roboczej (svn status, svn diff)
g) wyślij zmiany do repo
h) ponownie sprawdź stan kopii roboczej (svn status)


4. Zaktualizuj drugą kopię roboczą(wc2) i przeanalizuj komunikaty (svn update)


5. W drugiej kopii roboczej(wc2) wprowadź poniższe zmiany:
a) stwórz nowy pusty katalog o nazwie "html"(svn mkdir):
- sprawdź stan wc i przeanalizuj komunikaty
- wyślij zmiany do repo
- sprawdź stan wc
b) w katalogu "html" umieść wszystkie pliki z rozszerzeniem .html
- sprawdź stan wc, ale nie wysyłaj zmian do repo
c) stwórz plik "logo_jq2.js", skopiuj do niego zawartość pliku "logo_jq1.js" 
i zmień wartości parametrów (delay, speed, timeout) dla typu rotacji 'slideY'
- sprawdź stan wc i przeanalizuj komunikaty
- wyślij zmiany do repo
- sprawdź stan wc


6. Wprowadź zmiany w pierwszej kopii roboczej(wc1):
a) wytnij kod języka 'css' z pliku 'logo.html' do nowego pliku "slideshow/logo.css" i podlinkuj go:
- sprawdź stan wc i przeanalizuj komunikaty
- wyslij zmiany do repo i przeanalizuj komunikaty
b) zaktualizuj wc1 i przeanalizuj komunikaty
c) rozwiąż ewentualne problemy (svn resolved, svn revert)



7. Wprowadź zmiany w wc2:
a) usuń plik "logo5.html"
- sprawdź stan wc i przeanalizuj komunikaty
- wyslij zmiany do repo
b) uaktualnij wc i przeanalizuj komunikaty
c) zmień wygląd tabeli, w pliku "logo.css" dodaj zwykłe krawędzie
- sprawdź stan wc
- wyślij zmiany do repo
- sprawdź stan wc



8. Wprowadź zmiany:
a) w wc1:
- uaktualnij wc
- zmien rodzaj krawędzi tabeli na kropkowany w pliku "logo.css"
- sprawdź stan wc
- wyślij zmiany do repo
- sprawdź stan wc
b) w wc2:
- nie uaktualniaj wc
- sprawdź stan wc
- zmien rodzaj krawędzi tabeli na przerywaną linię w pliku "logo.css"
- wyślij zmiany do repo i przeanalizuj komunikaty
- sprawdź stan wc
- co można zrobić?




9. Sprawdź różnice między wersjami pliku "logo.css" (svn diff)
a) dla jednej rewizji
b) miedzy rewizjami 6 i 8




10. Sprawdź kto i kiedy dodał plik "logo.css" (svn annotate, svn blame, svn praise)




11. Skopiuj plik "logo3.html"(użyj svn cp), nazywając go "new_logo3.html". Sprawdź stan wc. 
Następnie przenieś plik "logo3.html"(svn mv) zmieniając mu nazwę na "old_logo3.html". 
Ponownie sprawdź stan wc. Porównaj rezultaty.



12. Sprawdź jakie zmiany zaszły dla pliku "logo_jq1.js" (svn log)
a) ogólnie
b) pomiędzy 2 niezbyt odległymi rewizjami (np 4 i 7)




13. Obejrzyj zawartość pliku "logo.css" z archiwum (svn cat)
a) ogólnie
b) jego rewizję nr 6



14. Zmodyfikuj slideshow, dodając więcej zdjęć:
a) w wc2:
- w pliku "logo_jq1.js" w wierszu 9 dodaj poniższą linię kodu:
$('div').append('<img src="../pic/Frog.png"/>');
- pchnij zmiany do repo
b) w wc1:
- nie uaktualniaj wc
- w pliku "logo_jq1.js" w wierszu 9 dodaj poniższą linię kodu:
$('div').append('<img src="../pic/Duck_svn.png"/>');
- wrzuc zmiany do repo


15. Zbuduj nową wersję projektu (svn export)


16. Użyj wehikułu czasu i przywróć repo do wersji z rewizji nr 4. 
Sprawdź stan repo i wróć do przyszłości (-:



17. Stwórz nową gałąź projektu slideshow o nazwie wc3_branch1 (svn copy, svn checkout)
a) w wc3_branch1 zmień pliki:
- logo1.html
- zatwierdz zmiany do repo
- logo.css
- zatwierdz zmiany do repo
- sprawdz historie
b) w wc1 zmień plik:
- logo.css
- zatwierdz zmiany do repo
- sprawdz historie


18. Połącz zmiany z głównej gałęzi z gałęzią wc3_branch1 (pwd, svn merge)

19. Włącz gałąź wc3_branch1 spowrotem do głównej gałęzi (svn merge)

20. Przywróć plik "logo5.html" w wc1 (svn revert?, svn update?, svn checkout?)

21. Stwórz tag o nazwie v1.0 (svn copy)

22. Użyj GUI do wprowadzenia zmian:
a) dodaj nowy plik do repo
b) przesuń istniejacy plik w inne miejsce
c) usuń plik z repo
d) utwórz konflikt i rozwiąż go