com fusionar branques a GitHub, cancel·lar la fusió a GitHub, branca a GitHub

Crea una branca al GitHub i fusiona-la de manera segura

Aprendre a crear una branca a GitHub és el primer pas. Tanmateix, dominar com fusionar branques a GitHub de manera segura és igual de crític per a cada branca. GitHub flux de treball. Així doncs, en aquesta publicació, us guiarem per tot el procés, començant per com crear una branca a GitHub i després et mostrem com fusionar branques a GitHub de manera segura. També explicarem com cancel·lar una fusió si trobeu algun problema i, finalment, com Xygeni us pot ajudar a detectar tots els problemes abans que arribin a la branca principal.

Anem-hi pas a pas.

1. Com crear una branca a GitHub de la manera correcta

Tot flux de treball segur comença quan creeu una branca a GitHub. Permet als desenvolupadors aïllar funcions, correccions o experiments sense afectar el codi de producció.

Per crear una branca al GitHub:

1. Navegueu fins al vostre repositori

2. Feu clic al menú desplegable del selector de branques

com fusionar branques a GitHub, cancel·lar la fusió de GitHub i la branca de GitHub

3. Escriviu el nom de la vostra nova sucursal

4. clic Crea una branca

com fusionar branques a GitHub, cancel·lar la fusió de GitHub i la branca de GitHub

A partir d'aquí, la vostra nova branca ja està a punt. Ara podeu enviar codi, col·laborar en els canvis i, finalment, obrir una pull requestTot i que aquesta és una acció bàsica de GitHub, prepara el terreny per a un desenvolupament segur.

És important destacar que cada vegada que creeu una branca a GitHub, aquesta hauria de formar part d'un flux de treball repetible i protegit.

2. Escanejar Pull Requests Automàticament abans de fusionar

Quan creeu una branca a GitHub i la prepareu per a la revisió, el següent pas és entendre com fusionar branques a GitHub de manera segura. Cada push de branca a GitHub hauria d'activar comprovacions automatitzades. Però abans de la fusió, és essencial verificar que el codi no introdueix vulnerabilitats. Un sol insegur commit pot exposar la teva aplicació, leak secrets, o trencar infraestructures crítiques.

Fusionar codi a la branca principal és una operació d'alt impacte. Sense les comprovacions adequades, pot comportar conseqüències greus com ara:

Aquí és on Xygeni marca la diferència

Mitjançant l'ús Accions de GitHub, podeu activar exploracions Xygeni automatitzades sempre que un desenvolupador obre un pull request en una branca protegida. Una branca protegida a GitHub és aquella que requereix comprovacions o aprovacions específiques abans que es permeti la fusió dels canvis.

Xygeni analitza el darrera execució de la pull request flux de treball per validar la postura de seguretat dels canvis proposats. Això inclou la comprovació de problemes en el codi, les dependències, els secrets i CI/CD configuracionsNo es torna a escanejar tota la branca, però s'utilitza el resultat del flux de treball més recent per aplicar polítiques i bloquejar les fusions no segures.

Aquestes exploracions validen que el codi és segur i llest per a la producció. Detecten:

Integració aquestes comprovacions anticipades garanteixen que cada vegada que creeu una branca al GitHub i la prepareu per fusionar-la, ho feu amb visibilitat i control totals.

Aquí teniu una configuració 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. Bloqueja les fusions no segures amb Guardrails

Guardrails, assegureu-vos que quan creeu una branca a GitHub o intenteu com fusionar branques a GitHub, només els canvis segurs arribin a la configuració de la branca principal de GitHub. Xygeni us ofereix control total sobre el que es fusionaPodeu definir prèviamentcisregles adaptades a les vostres polítiques de seguretat i tolerància al risc. Per exemple:

  • Bloqueja si és un secret crític es troba (per exemple, claus d'AWS, tokens)
  • Falla la construcció si a nou d'alt risc s'introdueix el paquet de codi obert
  • Rebutjar pull requests que modificar camins sensibles M'agrada .github/workflows/, infrastructure/, O secrets.env
  • Evitar fusions si a reintrodueix la degradació conegut Vulnerabilitats
  • Bloquejar CI/CD canvis de configuració tret que estigui correctament etiquetat
  • Atura les fusions si SAST detecta alt o qüestions crítiques
  • Aplicar més estricte Guardrails a les branques de producció tot mantenint la flexibilitat en el desenvolupament

Aquestes regles actuen com a guardians automatitzats. Ajuden el vostre equip a fusionar només allò que és segur, sense sorpreses, sense revisions manuals, sense intervencions d'última hora.

Exemple de regla de barana:

				
					guardrail block_critical_secrets
  on secrets
  when severity = critical
  then @fail()
				
			

Retroalimentació visual en el Dashboard

com fusionar branques a GitHub, cancel·lar la fusió de GitHub i la branca de GitHub

Per garantir una visibilitat completa, Xygeni mostra el resultat de la darrera avaluació de l'estat de Guardrail.

  • Abans de res, una icona verda significa que totes les polítiques s'han aprovat.
  • En canvi, una icona vermella indica que s'han violat una o més condicions de Guardrail.

Com a resultat, tant els desenvolupadors com els equips de seguretat obtenen informació immediata sobre per què s'ha bloquejat una fusió, sense haver d'investigar els registres de CI.

Exemple real de la Dashboard:

Per exemple, suposem que un repositori no té branques protegides, una configuració incorrecta comuna que permet als desenvolupadors impulsar commits sense verificació. Això és un risc greu.

Xygeni detecta i marca això automàticament com a signat_commits qüestió sota la CI/CD categoria. El dashboard aspectes destacats:

  • Severitat: alt
  • tipus: Signat Commits
  • Explicació: El repositori no té branques protegides
  • Estat: obert

Per tant, amb aquesta retroalimentació enriquida en context, els equips poden identificar ràpidament el risc, entendre el seu impacte i prendre mesures correctives, tot des de la interfície d'usuari de Xygeni.

Customize Comportament d'aplicació de la llei

Sempre tens el control. Tria amb quina rigorositat Guardrails hauria de ser:

  • --fail-on=critical: Bloqueja les fusions només en casos greus
  • --never-fail: Correr Guardrails en mode d'execució en sec per provar les polítiques abans d'aplicar-les

Així doncs, la propera vegada que creeu una branca al GitHub, la vostra Guardrails ja hi són, protegint el vostre pipeline i aplicant les vostres polítiques automàticament.

Com puc saber si una aplicació de GitHub és segura?

Apreneu a avaluar les aplicacions de GitHub abans d'instal·lar-les.

Lectura relacionada:

4. Cancel·la la fusió a GitHub automàticament quan es trobin riscos

Si es detecten riscos, la fusió es cancel·la. Aquesta salvaguarda protegeix tots els projectes de branques de GitHub i aplica les millors pràctiques sobre com fusionar branques a GitHub.

Xygeni s'integra directament a la interfície d'usuari de GitHub. Quan es detecta un risc:

  • GitHub mostra la comprovació com a fallida
  • Les proteccions de GitHub impedeixen la fusió
  • La cua de fusió omet el codi no segur

Tant si és un secret, una mena de CVE o un perill CI/CD patró, el resultat és el mateix: el La fusió s'ha cancel·lat al GitHub i marcat per a revisió.

També podeu veure resultats detallats a Xygeni:

  • L'estat de seguretat de cada sucursal
  • Per què s'ha bloquejat una fusió
  • Historial complet d'escaneig
  • L'estat de la barana es mostra mitjançant icones verdes (aprovat) o vermelles (suspès) a la pàgina del projecte.

Aquesta retroalimentació visual facilita que els desenvolupadors i els equips de seguretat puguin actuar amb confiança. I quan necessiteu un context més profund, cada problema enllaça a la documentació amb indicacions de gravetat, etiquetes, ubicació i mitigació.

Fusiona només el que sigui segur

En resum, aquí teniu com fer una fusió segura després de crear una branca al GitHub:

  • Crea una branca al GitHub a través de la interfície d'usuari
  • Activa escanejos automàtics amb cada pull request amb Xygeni 
  • Bloqueja les fusions insegures mitjançant Guardrails
  • Utilitzeu polítiques d'auditoria del costat del servidor per a un control més profund
  • Cancel·la la fusió al GitHub quan alguna cosa falla
  • Visualitza tots els resultats a Xygeni's dashboard

Per obtenir més informació sobre les millors pràctiques sobre la protecció de repositoris, llegiu la nostra Preguntes freqüents sobre seguretat de GitHub: què hauria de saber tot desenvolupador.

Tot i que la fusió és una operació bàsica, fer-la de manera segura requereix una visibilitat i automatització reals. Amb Xygeni, no només fusiones codi, sinó que també fusiones confiança.

Protegiu totes les branques de GitHub amb confiança

Un únic problema passat per alt en un pull request pot comprometre la vostra branca principal. Els escàners tradicionals sovint s'executen massa tard, passen per alt riscos crítics o no aconsegueixen aplicar polítiques significatives.

És per això que protegir les branques de GitHub requereix més que només escanejar.

Xygeni proporciona una aplicació real. Quan un pull request té com a objectiu una branca protegida, Xygeni analitza la darrera execució del vostre CI/CD flux de treball. No torna a analitzar tota la branca. En comptes d'això, avalua els resultats més recents per comprovar si hi ha problemes de seguretat en el codi, les dependències, els secrets i les configuracions del flux de treball. No només rebeu alertes. Esteu protegits.

Què ho fa diferent:

  • Validació de context complet: Guardrails aplicar polítiques utilitzant un context ric com la gravetat, l'explotabilitat i les metadades de la branca.
  • Integració integrada amb GitHub: Tot, des de l'escaneig fins a l'aplicació de normes, s'executa de forma nativa dins dels fluxos de treball de GitHub, sense necessitat de scripts personalitzats ni codi enganxat.
  • Auditories del costat del servidor: Del costat del servidor Guardrails validar els resultats després de la càrrega, afegint una segona capa de control fora del pipeline.

En lloc de confiar en la configuració de la CI per detectar-ho tot, Xygeni aplica una definició automatitzada i basada en polítiques.cisions abans que res arribi a la branca principal.

Tot i que la fusió és una operació bàsica, fer-la de manera segura requereix una visibilitat i automatització reals. Amb Xygeni, no només protegeixes els teus repositoris, sinó que també protegeixes totes les branques de GitHub amb confiança.

sca-tools-software-composition-analyse-tools
Prioritzar, solucionar i protegir els riscos del programari
Obtén el teu compte gratuït.
No es requereix cap targeta de crèdit.

Assegura el desenvolupament i el lliurament del teu programari

amb el paquet de productes Xygeni