Há muito tempo defendemos o uso de branches de desenvolvimento de curta duração que são mesclados (merged) frequentemente no branch principal, que é então mantido pronto para implantação. Essa prática de desenvolvimento (trunk-based) está de mãos dadas com a integração contínua e, quando as condições permitem, resulta em ciclos de feedback mais rápidos e em um fluxo de desenvolvimento mais eficiente. No entanto, nem todos preferem essa abordagem, e frequentemente, adaptamos nosso estilo para acomodar as práticas das nossas clientes. Às vezes, isso inclui branches de longa duração seguidos de pull requests que devem ser revisadas e aprovadas manualmente antes de serem mescladas no branch principal. Nessas situações, usamos o novo recurso de fila de merges do GitHub. Ele permite que os pull requests recebidos sejam automaticamente colocados em fila e mesclados (merged) em um branch especial na ordem em que foram recebidos. Em seguida, temos a opção de automatizar nossas próprias “verificações de merge” para evitar commits incompatíveis. Isso essencialmente simula o desenvolvimento direto no tronco (trunk-based) (mesmo que os Pull Requests ainda não tenham sido mesclados no branch principal do código) e permite que as pessoas desenvolvedoras testem suas funcionalidades no contexto sem ter que esperar que o Pull Request seja aprovado. Com a fila de merges do GitHub, você obtém os benefícios do desenvolvimento direto no tronco (trunk-based) mesmo quando não pode se comprometer totalmente com ele.