Aprender a criar uma branch no GitHub é o primeiro passo. No entanto, dominar como mesclar branches no GitHub com segurança é igualmente crucial para cada branch. GitHub fluxo de trabalho. Então, neste post, vamos guiá-lo por todo o processo, começando com como criar uma ramificação no GitHub e então mostrando a você como mesclar branches no GitHub com segurança. Também abordaremos como cancelar uma mesclagem caso encontre algum problema e, por fim, como o Xygeni pode ajudar você a identificar todos os problemas antes que eles cheguem à sua branch principal.
Vamos analisar passo a passo.
1. Como criar uma ramificação no GitHub da maneira certa
Todo fluxo de trabalho seguro começa quando você cria uma ramificação no GitHub. Isso permite que os desenvolvedores isolem recursos, correções ou experimentos sem impactar o código de produção.
Para criar uma ramificação no GitHub:
1. Navegue até seu repositório
2. Clique no menu suspenso do seletor de ramificação
3. Digite o nome da sua nova filial
4. Clique Criar ramificação
A partir daqui, sua nova filial está pronta para funcionar. Agora você pode enviar código, colaborar em alterações e, eventualmente, abrir uma pull request. Embora esta seja uma ação básica do GitHub, ela prepara o cenário para um desenvolvimento seguro.
É importante ressaltar que toda vez que você cria uma ramificação no GitHub, ela deve fazer parte de um fluxo de trabalho repetível e protegido.
2. Digitalizar Pull Requests Automaticamente antes de mesclar
Ao criar uma branch no GitHub e se preparar para revisão, o próximo passo é entender como mesclar branches no GitHub com segurança. Cada push de branch no GitHub deve acionar verificações automatizadas. Mas antes de mesclar, é essencial verificar que. o código não introduz vulnerabilidades. Um único inseguro commit pode expor sua aplicação, leak secretou danificar infraestruturas críticas.
Mesclar código na sua branch principal é uma operação de alto impacto. Sem verificações adequadas, isso pode levar a consequências graves, como:
- Vulnerabilidades de dia zero entrando em produção
- Conhecido CVEs introduzido por meio de pacotes de código aberto
- Segredos codificados enviado para o repositório
- Configurações incorretas de infraestrutura que enfraquecem suas defesas
- Código malicioso ou adulterado entrando por dependências
É aqui que a Xygeni faz uma verdadeira diferença
Usando Ações do GitHub, você pode acionar varreduras automatizadas de Xygeni sempre que um desenvolvedor abre um pull request em uma ramificação protegida. Uma ramificação protegida no GitHub é aquela que requer verificações ou aprovações específicas antes que as alterações possam ser mescladas.
Xygeni analisa o última execução do pull request de gestão de documentos para validar a postura de segurança das alterações propostas. Isso inclui a verificação de problemas no código, dependências, segredos e CI/CD configurações. A ramificação completa não é verificada novamente, mas o resultado do fluxo de trabalho mais recente é usado para impor políticas e bloquear fusões inseguras.
Essas varreduras validam a segurança do código e a sua prontidão para produção. Elas detectam:
- Vulnerabilidades de código (SAST)
- Pacotes de código aberto vulneráveis (SCA)
- Segredos codificados
- IaC configurações erradas
- Malware potencial
Integração essas verificações antecipadas garantem que toda vez que você cria uma ramificação no GitHub e se prepara para mesclar, você faz isso com visibilidade e controle total.
Aqui está uma configuração simplificada:
on:
pull_request:
branches: [ main ]
jobs:
xygeni-scan:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Xygeni Scanner
uses: xygeni/xygeni-action@3.2.0
with:
token: ${{ secrets.XYGENI_TOKEN }}
3. Bloqueie fusões inseguras com Guardrails
Guardrails, certifique-se de que, ao criar uma ramificação no GitHub ou tentar mesclar ramificações no GitHub, apenas alterações seguras cheguem à configuração da sua ramificação principal no GitHub. O Xygeni oferece controle total sobre o que é mesclado. Você pode definir précise regras adaptadas às suas políticas de segurança e tolerância a riscos. Por exemplo:
- Bloquear se for um segredo crítico é encontrado (por exemplo, chaves AWS, tokens)
- Falha na construção se um novo de alto risco pacote de código aberto é introduzido
- Rejeitar pull requests que. modificar caminhos sensíveis como
.github/workflows/,infrastructure/, ousecrets.env - Impedir fusões se um downgrade reintroduz conhecido vulnerabilidades
- Bloquear CI/CD mudanças de configuração a menos que esteja devidamente etiquetado
- Pare as fusões se SAST detecta alta ou questões críticas
- Aplicar de forma mais rigorosa Guardrails em ramos de produção mantendo a flexibilidade no desenvolvimento
Essas regras funcionam como guardiões automatizados. Elas ajudam sua equipe a mesclar apenas o que é seguro, sem surpresas, sem revisões manuais, sem apagões de última hora.
Exemplo de regra de guarda-corpo:
guardrail block_critical_secrets
on secrets
when severity = critical
then @fail()
Feedback visual no Dashboard
Para garantir visibilidade total, o Xygeni mostra o resultado da avaliação mais recente do status do Guardrail.
- Em primeiro lugar, um ícone verde significa que todas as políticas foram aprovadas.
- Em contraste, um ícone vermelho sinaliza que uma ou mais condições do Guardrail foram violadas.
Como resultado, tanto os desenvolvedores quanto as equipes de segurança obtêm insights imediatos sobre o motivo pelo qual uma mesclagem foi bloqueada, sem precisar acessar os logs de CI.
Exemplo real do Dashboard:
Por exemplo, digamos que um repositório não tenha ramificações protegidas, uma configuração incorreta comum que permite que os desenvolvedores enviem commits sem verificação. Isso é um risco sério.
O Xygeni detecta e sinaliza isso automaticamente como um assinado_commits questão sob o CI/CD categoria. o dashboard luzes:
- Gravidade: Alto
- Tipo: Assinado Commits
- Explicação: O repositório não possui ramificações protegidas
- Estado: Abra
Portanto, com esse feedback rico em contexto, as equipes podem identificar rapidamente o risco, entender seu impacto e tomar medidas corretivas, tudo a partir da interface do usuário do Xygeni.
Personalizar Comportamento de execução
Você está sempre no controle. Escolha o quão rigoroso Guardrails deveria estar:
--fail-on=critical: Blocos são mesclados apenas em descobertas graves--never-fail: Execute Guardrails no modo de teste para testar políticas antes de aplicá-las
Então, da próxima vez que você criar uma ramificação no GitHub, seu Guardrails já estão lá, protegendo seu pipeline e aplicar suas políticas automaticamente.
4. Cancelar a mesclagem no GitHub automaticamente quando riscos forem encontrados
Se riscos forem detectados, a mesclagem será cancelada. Essa salvaguarda protege todos os projetos de ramificação do GitHub e aplica as melhores práticas sobre como mesclar ramificações no GitHub.
O Xygeni integra-se diretamente à interface do GitHub. Quando um risco é encontrado:
- O GitHub mostra a verificação como falha
- As proteções do GitHub impedem a mesclagem
- A fila de mesclagem ignora código inseguro
Seja um segredo, CVE ou perigoso CI/CD padrão, o resultado é o mesmo: o a mesclagem foi cancelada no GitHub e sinalizado para revisão.
Você também pode visualizar resultados detalhados no Xygeni:
- O status de segurança de cada filial
- Por que uma mesclagem foi bloqueada
- Histórico de varredura completo
- O status do guardrail é mostrado por meio de ícones verdes (aprovado) ou vermelhos (reprovado) na página do projeto
Este feedback visual facilita a tomada de medidas com confiança por desenvolvedores e equipes de segurança. E quando você precisa de um contexto mais aprofundado, cada problema é vinculado à documentação com gravidade, tags, localização e orientações de mitigação.
Tldr Mesclar apenas o que for seguro
Para resumir, veja como mesclar com segurança depois de criar uma ramificação no GitHub:
- Crie uma ramificação no GitHub por meio da interface do usuário
- Acione varreduras automáticas a cada pull request com Xygeni
- Bloquear fusões inseguras usando Guardrails
- Use políticas de auditoria do lado do servidor para um controle mais profundo
- Cancelar a mesclagem no GitHub quando algo falhar
- Visualize todos os resultados no Xygeni dashboard
Para obter práticas recomendadas adicionais sobre proteção de repositórios, leia nosso Perguntas frequentes sobre segurança do GitHub: o que todo desenvolvedor deve saber.
Embora a mesclagem seja uma operação básica, fazê-la com segurança requer visibilidade e automação reais. Com o Xygeni, você não mescla apenas código, você mescla confiança.
Proteja cada branch do GitHub com confiança
Uma única questão negligenciada em um pull request pode comprometer sua filial principal. Os scanners tradicionais costumam ser executados tarde demais, não detectam riscos críticos ou não aplicam políticas significativas.
É por isso que proteger seus branches do GitHub exige mais do que apenas escanear.
A Xygeni fornece uma aplicação real. Quando um pull request tem como alvo um branch protegido, o Xygeni analisa a última execução do seu CI/CD fluxo de trabalho. Ele não verifica novamente toda a ramificação. Em vez disso, avalia os resultados mais recentes para verificar problemas de segurança no código, dependências, segredos e configurações de fluxo de trabalho. Você não é apenas alertado. Você está protegido.
O que o torna diferente:
- Validação de contexto completo: Guardrails aplicar políticas usando contexto rico, como gravidade, explorabilidade e metadados de ramificação.
- Integração GitHub incorporada: Tudo, desde a digitalização até a execução, é executado nativamente nos seus fluxos de trabalho do GitHub, sem necessidade de scripts personalizados ou código de colagem.
- Auditorias do lado do servidor: Lado do servidor Guardrails validar os resultados após o upload, adicionando uma segunda camada de controle fora do pipeline.
Em vez de depender da configuração do seu CI para capturar tudo, o Xygeni aplica de forma automatizada e baseada em políticascisíons antes que qualquer coisa chegue ao seu branch principal.
Embora a mesclagem seja uma operação básica, fazê-la com segurança requer visibilidade e automação reais. Com o Xygeni, você não protege apenas seus repositórios, mas também cada branch do GitHub com confiança.





