Estou tentando criar um fluxo de trabalho pessoal. Reunimos um fluxograma da expectativa de vida útil de uma versão: um desenvolvedor enviando para um repositório público do github + um amigo ajudando com algum recurso e corrigindo um bug.
Essa é uma abordagem razoável para o controle de versão?
A idéia principal é manter o repositório público organizado:
Cada nova versão fica em sua própria ramificação até que seja finalmente marcada na ramificação principal quando terminar.
Todo o trabalho é realizado nas ramificações "feature" ou "hotfix", nunca em uma ramificação de versão real, para evitar anomalias.
Mesclagens com ramificações de nível superior sempre são rebaseadas ou esmagadas (para evitar confusão).
Se é um exagero, não me importo, porque o ponto principal é aprender habilidades que talvez eu precise para um projeto maior. O único problema seria se eu estivesse fazendo algo totalmente errado ou desnecessário.
editar 2: corrigiu a má ideia no fluxograma original e facilitou a navegação.
fonte
--squash
erro e adicionei uma grade para facilitar o acompanhamento.Respostas:
O que vejo muito na comunidade git / github é este
ramos mestre desenvolver
Você e os colaboradores trabalham principalmente no desenvolvimento, mas alguém pode ter uma ideia ou um novo recurso; portanto, você cria um ramo de tópico como git checkout -b user_comments.
Então, à medida que avança no desenvolvimento, você empurra para dominar uma vez que git uma versão com a qual você está satisfeito e marca isso na ramificação master como 1.0 ou 1.1.2 etc (procure versões semânticas)
fonte