es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo evitar la pregunta “Dime quién eres” en git para un repositorio compartido.

Digamos que hay un repositorio llamado repoA. En el archivo gitlab-ci.yml de este repositorio, me gustaría clonar (y modificar) otro repositorio llamado repoB.

repoA y repoB pertenecen al mismo grupo de Gitlab, y todos los miembros de este grupo tienen el rol de mantenedor para ambos repositorios. Creé un token de acceso para repoB para usarlo como autenticación mientras clono el repositorio (dentro del yml de repoA), pero a pesar del token, git aún requiere declarar user.name y user.mail para comprometerse con repoB.

El script en gitlab-ci.yml se activa después de cada compromiso con repoA, así que ¿cómo puedo hacer que repoA no requiera configuración para acceder a repoB (usando el token de acceso)?

Básicamente, así es como se ve mi gitlab-ci.yml:

build-job:
image: “node:16.13.0”
stage: build
script:
– npm ci
– npm run docs:build
– cd ..
– git clone https://:@

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Para evitar tener que declarar user.name y user.email cada vez que git intente confirmar en repoB desde gitlab-ci.yml de repoA, puede configurar la configuración global de git en la sección de script de gitlab-ci.yml.

    Puede agregar las siguientes líneas antes de clonar repoB:

    - git config --global user.name "<tu_nombre_de_usuario>"
    - git config --global user.email "<tu_correo_electrónico>"
    

    Esto establecerá la configuración global de git para el runner actual, lo que le permitirá confirmar en repoB sin la necesidad de declarar el nombre de usuario y el correo electrónico para cada confirmación.

    Su archivo gitlab-ci.yml actualizado debería verse así:

    build-job:
      image: "node:16.13.0"
      stage: build
      script:
        - git config --global user.name "<tu_nombre_de_usuario>"
        - git config --global user.email "<tu_correo_electrónico>"
        - npm ci
        - npm run docs:build
        - cd ..
        - git clone https://<nombre_de_token>:<token>@<url_de_repob>
    

    Nota: Reemplace “” y “<tu_correo_electrónico>” con su nombre de usuario y correo electrónico global de git actual.</tu_correo_electrónico></tu_correo_electrónico></tu_correo_electrónico>

Comments are closed.