Próbuję wymyślić osobisty przepływ pracy. Przygotowałem schemat blokowy hipotetycznej długości wydania: jeden programista pcha na publiczne repozytorium github + przyjaciel pomaga przy niektórych funkcjach i naprawia błąd.
Czy to rozsądne podejście do kontroli wersji?
Główną ideą jest utrzymanie porządku w publicznej repozytorium:
Każde nowe wydanie dostaje się do własnego oddziału, dopóki nie zostanie ostatecznie otagowane w gałęzi master po zakończeniu.
Wszystkie prace są wykonywane w gałęziach „Feature” lub „Hotfix”, nigdy w rzeczywistej gałęzi wydania, aby zapobiec nieprawidłowościom.
Połączenia z gałęziami wyższego poziomu są zawsze ponownie bazowane lub zgniatane (aby uniknąć bałaganu).
Jeśli to przesada, nie mam nic przeciwko, ponieważ chodzi mi o to, aby nauczyć się umiejętności, które mogą być potrzebne do większego projektu. Jedynym problemem byłoby, jeśli robię coś całkowicie niewłaściwego lub niepotrzebnego.
edycja 2: naprawiono zły pomysł na oryginalnej schemacie blokowym i nieco ułatwiono nawigację.
źródło
--squash
błąd, i dodałem siatkę, aby ułatwić śledzenie.Odpowiedzi:
To, co często widzę w społeczności git / github, to to
mistrz rozwoju gałęzi
Ty i współautorzy pracujemy przede wszystkim w fazie rozwoju, ale ktoś może mieć pomysł lub nową funkcję, więc tworzysz gałąź tematyczną, taką jak git checkout -b user_comments.
Następnie, w miarę postępów w rozwoju, naciskasz na opanowanie po uzyskaniu wersji, z której jesteś zadowolony, i otagujesz ją w gałęzi master jako 1.0 lub 1.1.2 itp. (Wyszukaj wersję semantyczną)
źródło