Em vez de um histórico de consolidação único e longo, por que não existe uma hierarquia? Portanto, no nível superior, você pode receber solicitações, então você pode descer um nível e observar os commit nesse PR. Eu percebo que os RPs são específicos para o github, mas você entendeu. Apenas quero dizer agrupar uma série de confirmações como um recurso ou correção de erro, por exemplo.
Certamente isso tornaria o histórico de consolidação muito mais fácil de navegar.
Tenho certeza de que há uma resposta óbvia a essa pergunta, mas não consigo encontrá-la.
version-control
git
eggbert
fonte
fonte
Respostas:
Há um longo histórico de confirmação simples porque as alterações são seqüenciais. Cada um constrói no estado 'antes' e deixa um estado 'depois'. Seria difícil ter mudanças que não refletissem isso.
Uma opção para agrupar alterações relacionadas é usar tags - http://git-scm.com/book/en/Git-Basics-Tagging, embora sejam mais usadas para marcar um ponto na história em vez de agrupar confirmações diferentes.
Para agrupar confirmações em outras maiores, você também pode fazer o rebasing interativo.
Ramificações são uma opção. Você pode criar uma ramificação e fazer vários commits relacionados logicamente. Você pode mesclar essas confirmações novamente no mestre, conforme desejado - provavelmente usando a
--no-ff
opçãoA relação entre as ramificações também pode ser vista em ferramentas visuais, como gitg / gitx
fonte
Eu tive o mesmo problema pensando nisso até descobrir que o Git numera seus ramos principais. Diante disso, as confirmações de mesclagem geralmente irritantes que são geradas podem ser consideradas nós de resumo. E todos os detalhes extras podem ser banidos da visualização, deixando um único histórico linear resumido.
Confira esta postagem no blog para obter detalhes e exemplos.
fonte
Você agrupa confirmações em ramificações: cada ramificação é um conjunto de confirmações. Quando você mescla confirmações, você está colocando um conjunto de confirmações dentro de outra ramificação, construindo efetivamente uma hierarquia de confirmações: ramificação principal, recursos, bugs, experimentos, o nome dele.
Idealmente, sua ramificação principal é uma sucessão de confirmações de mesclagem. Se você olhar apenas para os primeiros pais (os comandos git aceitam essa opção), você terá uma visão de alto nível do seu histórico (esperamos que você escreva um commit de mesclagem significativo, não o gerado automaticamente). Mas quando você olha para o segundo, terceiro, etc. pais de uma mesclagem em seu histórico, está abrindo a caixa para ver o que há dentro de uma mesclagem. Aqui você tem detalhes do que aconteceu.
fonte