→ Slide 1
Systemy kontroli wersji
→ Slide 2
Dlaczego kontrola wersji?
repozytorium kodu (i nie tylko) z historią zmian
mechanizmy współdzielenia pracy członków zespołu, synchronizacja zmian
śledzenie zmian w kodzie, porównywanie różnic w wersjach kodu, patche
rozwój kolejnych wersji i gałęzi oprogramowania oraz mechanizmy łączenia ich
historia rozwoju, dokumentacja zmian w kolejnych wersjach
kopie bezpieczeństwa - możliwość wycofania zmian, powrotu do poprzedniego stanu
→ Slide 3
Historia zmian projektu
trunk
- wersja rozwojowa
branches
- odgałęzienia
tags
- wersja zamrożona (np. v.1.0)
→ Slide 4
Repozytoria
Subversion (SVN) - architektura klient-serwer (scentralizowana),
obsługa z VS możliwa dzięki wtyczkom (np.
Ankh SVN
)
Git
- architektura rozproszona,
repozytorium przechowuje pełną historię (klonowanie)
TFVC
- podobny w architekturze do SVN
→ Slide 5
Architektura
Scentralizowany (SVN, TFVC)
Rozproszony (git)
Źródło:
http://git-scm.com
→ Slide 6
Kontrola wersji w VS
Team Foundation Version Control (TFVC)
scentralizowany, całe repozytorium znajduje się na jednym (zdalnym) serwerze
kontrola dostępu aż do poziomu pojedynczego pliku
rozgałęzienia to osobne katalogi
git
zdecentralizowany, każdy użytkownik posiada pełną kopię repozytorium
można pracować lokalnie
większość operacji wykonywana lokalnie (szybszy w działaniu od scentralizowanych)
wygodny mechanizm tworzenia gałęzi
elastyczny, możliwość wdrożenia różnych
workflow
TFVC
git
Źródło:
http://msdn.microsoft.com
→ Slide 7
Więcej informacji
What is source control?
git - fast version control
Git w Visual Studio i Azure Repos