2010-06-29 13 views
5

Używam git po raz pierwszy i jest scenariusz, który nie bardzo wiem, jak rozwiązać.Zarządzanie gałęzią wydania w Git

Mam prostą aplikację webową (tylko html, css i js) i chcę tworzyć regularne wersje, które można śledzić za pomocą numeru wersji. Jest to łatwe do zrobienia z git tag. Ale haczyk polega na tym, że w przypadku moich wydań chcę zrobić kilka dodatkowych rzeczy, takich jak minimalizowanie skryptów js i aktualizowanie stron html, aby wskazać im. Potrzebuję również .gitattribute w wydaniu, które ignoruje nieminified skrypty js, dzięki czemu git archive generuje najmniejszy możliwy wynik.

To, co zrobiłem, to utworzenie oddziału releases. Ten oddział zawiera wymienione wyżej .gitattributes i zmodyfikowane strony html. Za każdym razem, gdy chcę mieć nową wersję, przełączam się na tę gałąź, łączę zmiany z wzorcem, a następnie kończę wydanie i otaguję go numerem wersji. Wydaje się działać tak, jak chcę, ale nie jestem pewien, jak to się robi.

Moje pytanie do bardziej doświadczonych użytkowników git brzmi: w jaki sposób jest to zwykle obsługiwane?

+0

Nie widzę, czy istnieje alternatywa. Musisz _zostroić nowe pliki js i css w gałęzi wydania. –

Odpowiedz

3

Rozwiązanie oddział jest dobry, ale do zarządzania uwalnianiu, można również po prostu zapisać „uwolnienia” w zewnętrznym repozytorium (jak Maven jeden na przykład, lub innego repo Git zadeklarowanej jako modułem)

rzecz z zarządzaniem zwolnienia jest:

  • nie trzeba szczegółową historię dla każdego pliku (ponieważ te pliki są build z plików źródłowych)
  • trzeba te pliki „zwolnienie” być " zapakowany "jak minified js.

Z tych powodów (kompilacja i pakowanie) nie trzeba koniecznie przechowywać ich w tym samym repozytorium, niż w przypadku źródeł (ze szczegółową historią i wieloma oddziałami).
Po prostu nie produkuje się wersji wydań w tym samym tempie, co w przypadku źródeł: cykl rozwoju oprogramowania różni się od wersji rozwojowej.

+0

To prawda, chociaż podoba mi się wygoda posiadania dostępu do kodu, który wyprodukował każde wydanie. –

Powiązane problemy