/ / Tagowanie najnowszego wydania? - git

Tagowanie najnowszego wydania? - git

Mamy repozytorium git używane do rozwoju. Od czasu do czasu wydajemy wydania opatrzone tagami. Istnieje również zautomatyzowany system budowania, który chcemy zbudować najnowszą wersję tagged. Tymczasem zatwierdzenia są pchane jak zwykle.

Jak oznaczamy najnowszą wersję, aby automatyczna kompilacja mogła ją pobrać?

Ważne jest, aby zautomatyzowany system zawsze wybierał wersję z tego samego adresu URL. Nie można użyć skryptu z describe lub dowolną inną metodę pobierania czasu na rozwiązanie ostatniego tagu.

Pierwszym pomysłem jest użycie konkretnej wagi lekkiejznacznik taki jak LAST_RELEASE i przenosić go (usuwać i odtwarzać?) za każdym razem, gdy jest oznaczone tagiem. Innym pomysłem jest utrzymanie oddzielnej gałęzi i utrzymanie jej synchronizacji z ostatnim tagiem wydania. Innym pomysłem jest użycie gałęzi, ale zamiast utrzymywać ją w synchronizacji przy użyciu scaleń / rebase, po prostu usuń i ponownie utwórz ją dla każdego wydania.

Nie lubię żadnej z tych metod. Czy istnieje jakiś ustalony rozsądny sposób, aby to osiągnąć?

Odpowiedzi:

1 dla odpowiedzi № 1

Najlepszym sposobem jest użycie oddziału. Powinieneś znaleźć to, jeśli zrobisz to poprawnie, a stable Oddział powinien zawsze poruszać się do przodu bez żadnego przepychania / popychania siły. Ilekroć zrobisz nowe wydanie, możesz sprawdzić swój stable oddziałuj i scalaj w swoim develop gałąź. A gdy zajdzie potrzeba poprawienia zmian w nowych wydaniach, można dodać gałęzie commits / scalania do stable gałąź, a następnie sprawdź swój develop odgałęzienie i scalenie stable.

Spójrz tutaj dla powszechnie używanego modelu rozgałęzień opartego na tym pomyśle. Powinieneś znaleźć to master Oddział w tym modelu jest dokładnie tym, czego potrzebujesz, aby śledzić najnowsze wydanie.

Jeśli nie możesz przejść do modelu rozgałęzionegow ten sposób lepiej byłoby korzystać z oddziałów. Jeśli chcesz oznaczyć nowe wydanie, zamawiasz swoje repozytorium do żądanego zatwierdzenia wydania i uruchamiasz git push -f origin release, który ma taki sam efekt jak usuwanie i odtwarzanie gałęzi.

Tagi mają zawsze oznaczać to samo zatwierdzenie po ich utworzeniu. Gałęzie mają przesuwać się do przodu.