Dla każdego wydawanego przez nas wydania mamy osobne oddziały (około 4 rocznie). Jest to bardzo wygodne, gdy trzeba wyciągnąć określone wydanie.
Jeśli chcesz zachować kilka starszych wydań, nie sądzę, że to wystarczy. Dzięki określonym gałęziom wersji możesz zastosować poprawki dla każdej gałęzi osobno (lub ich wybrane), nie martwiąc się o żadne inne wersje.
Ułatwia także porównywanie wydań, gdy polujesz, kiedy wprowadzono błąd lub funkcję.
Nie martw się o liczbę oddziałów lub o czas, jaki upłyną bez zmian. Twój system kontroli wersji ma dać ci kontrolę i zapewnić historię rozwoju twojego projektu. Historia ma tendencję, by się nie zmieniać ... I nie martw się, że twoi CVS nie będą w stanie sobie poradzić. Używamy Perforce, ponad 9000 plików w gałęzi programistycznej, do 50 gałęzi programistycznych dla wydań, nad którymi pracujemy, i jak już powiedziano, jeden oddział na wydanie, które publikujemy. Perforce nie oddycha nawet mocniej.
W skrócie: ułatw swoje życie jako programista / opiekun / naprawiacz błędów / łowca problemów i nie martw się o liczbę oddziałów lub liczbę plików. Wszelkie szanujące się cvs sobie poradzą.
Edytować:
W ogóle nie odczuwamy zamieszania w odniesieniu do liczby oddziałów, które posiadamy. Nasz schemat nazewnictwa dla gałęzi wydania i nasze zasady dla gałęzi 1 wydania 1 dla gałęzi programistycznych (lub roboczych) mogą mieć z tym coś wspólnego.
Gałęzie wersji mają nazwę, którą posiadają, tj .: R2011SP1 dla wersji 2011 Service Pack 1. Nasze gałęzie pracy mają mniej inteligentne nazwy: sub01, sub02, sub03 itd. „Sub” pochodzi z faktu, że wszystkie gałęzie pracy są sub-gałęziami oddziału akceptacji. Gałąź akceptacji to ta, w której gromadzone są wszystkie problemy gotowe do wydania.
Nasze zasady dotyczące gałęzi pracy 1 wydanie 1 w połączeniu z faktem, że nasz system śledzenia problemów został dostosowany do pola „oddział”, zapewnia, że zawsze wiemy, jaki problem został opracowany w której gałęzi. Gdy problem jest zintegrowany z gałęzią akceptacji, pole to jest aktualizowane. Oznacza to, że zawsze wiemy, które problemy są gotowe do wydania (po zakończeniu testów akceptacyjnych). Podobnie aktualizujemy to pole, gdy tworzona jest gałąź wydania i w ten sposób zawsze możemy wyśledzić, w której wersji wydano problem.