Crea y clona un repositorio

Crea un repositorio en Secure Source Manager y clónalo en tu máquina local.

Antes de comenzar

  1. Crea una instancia de Secure Source Manager o solicita acceso a una. Para obtener más información, consulta Crea una instancia de Secure Source Manager.
  2. Install the Google Cloud CLI.

  3. If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

  4. To initialize the gcloud CLI, run the following command:

    gcloud init
  5. Instala el componente alpha de Google Cloud CLI:
    gcloud components install alpha

Roles requeridos

Para obtener los permisos que necesitas para crear un repositorio, pídele a tu administrador que te otorgue los siguientes roles de IAM:

Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro rol predefinido.

Para obtener información sobre cómo otorgar roles de Secure Source Manager, consulta Control de acceso con IAM y Cómo otorgar acceso a la instancia a los usuarios.

Crea un repositorio

Interfaz web

  1. Para acceder a la instancia de Secure Source Manager a través de su interfaz web, copia la siguiente URL en la barra de direcciones de tu navegador.

    INSTANCE_ID-PROJECT_NUMBER.LOCATION.sourcemanager.dev

    Reemplaza lo siguiente:

    • INSTANCE_ID por el nombre de la instancia.
    • PROJECT_NUMBER por el número de proyecto de la instancia Google CloudPara obtener información sobre cómo identificar proyectos, consulta Identifica proyectos.
    • LOCATION con la región de la instancia.

  2. Si es necesario, autentícate con tus credenciales de Secure Source Manager.

  3. Haz clic en el ícono + Crear repositorio nuevo en la parte superior derecha del menú de navegación.

  4. Completa los detalles del repositorio:

    1. ID del repositorio: Ingresa un nombre para el repositorio.

    2. Descripción: (opcional) Es la descripción del repositorio.

    3. Inicializar repositorio: Opcional. Selecciona esta opción si deseas inicializar el repositorio y agregar los archivos .gitignore, license y README.

    4. .gitignore: Opcional. Elige qué archivos no deseas hacer un seguimiento con las plantillas del menú desplegable.

    5. license: Opcional. Selecciona una licencia común en el menú desplegable.

    6. Rama predeterminada: Es el nombre de la rama predeterminada.

  5. Haz clic en Enviar.

El repositorio se crea en tu instancia de Secure Source Manager.

El rol de administrador de repositorios (roles/securesourcemanager.repoAdmin) se te otorga cuando creas un repositorio nuevo. El nuevo permiso de IAM puede tardar hasta 2 minutos en propagarse, por lo que, si recibes un error de permisos cuando intentes acceder al repositorio después de crearlo, espera unos minutos y vuelve a intentarlo.

Los repositorios que creaste se enumeran en la interfaz web de Secure Source Manager en la página Mis repositorios.

Configura tus credenciales

Ejecuta el siguiente comando para agregar el asistente de autenticación de Secure Source Manager a tu configuración global de Git:

Linux

git config --global credential.'https://*.*.sourcemanager.dev'.helper gcloud.sh

Es posible que las versiones anteriores de Git no admitan comodines. Para agregar el auxiliar de autenticación sin comodines, ejecuta el siguiente comando:

git config --global credential.'https://INSTANCE_ID-PROJECT_NUMBER-git.LOCATION.sourcemanager.dev'.helper gcloud.sh

Windows

git config --global credential.https://*.*.sourcemanager.dev.helper gcloud.cmd

Es posible que las versiones anteriores de Git no admitan comodines. Para agregar el auxiliar de autenticación sin comodines, ejecuta el siguiente comando:

git config --global credential.https://INSTANCE_ID-PROJECT_NUMBER-git.LOCATION.sourcemanager.dev.helper gcloud.cmd

Reemplaza lo siguiente:

  • INSTANCE_ID por el nombre de tu instancia de Secure Source Manager
  • PROJECT_NUMBER por el número de tu proyecto. Si necesitas ayuda para encontrar el número de tu proyecto, consulta Identifica proyectos.
  • LOCATION con la región de la instancia. Para obtener más información sobre las regiones, consulta Ubicaciones.

El auxiliar de autenticación usa gcloud CLI para recuperar tus credenciales deGoogle Cloud cuando usas comandos de Git con Secure Source Manager.

Para volver a autenticarte después de la configuración inicial de las credenciales, ejecuta el siguiente comando de gcloud CLI:

gcloud auth login

Clona un repositorio

  1. En la interfaz web de Secure Source Manager, navega a la página de tu repositorio.

  2. Copia la URL HTTPS que se encuentra en la parte superior de la página del repositorio.

  3. Clona tu repositorio ejecutando el siguiente comando:

    git clone REPOSITORY_URL
    

    En el ejemplo anterior, REPOSITORY_URL es la URL HTTPS que se muestra en la parte superior de la página del repositorio que deseas clonar.

    Ignora la advertencia sobre la clonación de un repositorio vacío.

Envía a un repositorio

  1. En una ventana de la terminal, cambia los directorios al repositorio clonado.

    cd REPOSITORY_NAME
    

    Donde REPOSITORY_NAME es el nombre de tu repositorio.

  2. Crea un archivo README vacío:

    touch README.md
    
  3. Agrega el archivo README a Git y crea un mensaje de confirmación:

    git add README.md
    git commit -m "initial commit"
    
  4. Envía los cambios a tu repositorio remoto:

    git push -u origin main
    

    Git envía el archivo de la rama principal al remoto de origen. El resultado es similar al siguiente:

    Enumerating objects: 3, done.
    Counting objects: 100% (3/3), done.
    Writing objects: 100% (3/3), 211 bytes | 211.00 KiB/s, done.
    Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
    remote: . Processing 1 references
    remote: Processed 1 references in total
    To https://instance-id-123456789012-git.us-central1.sourcemanager.dev/my-project/my-repo.git
    * [new branch]      main -> main
    branch 'main' set up to track 'origin/main'.
    

Cómo ver tus archivos en Secure Source Manager

En la interfaz web de Secure Source Manager, haz clic en el nombre de tu repositorio.

Se abrirá la página del repositorio y tu archivo README.md aparecerá en la pestaña <> Code.

Limpia

Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta página.

Antes de quitar el repositorio, asegúrate de que los archivos que quieres conservar estén disponibles en otra ubicación.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: Es el ID del proyecto de Google Cloud en el que se ejecuta Secure Source Manager.
  • LOCATION: Es la región en la que se encuentra la instancia. Para obtener información sobre las ubicaciones compatibles, consulta Ubicaciones.
  • REPOSITORY_ID: Es el ID del repositorio.

Método HTTP y URL:

DELETE https://securesourcemanager.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/repositories/REPOSITORY_ID

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

"name":"operations/cc3ea26c-9b57-11ed-be0a-2e3b5910efef","metadata":{"@type":"type.googleapis.com/google.cloud.securesourcemanager.v1.OperationMetadata","createTime":"2023-01-23T19:54:49.904779921Z","endTime":"2023-01-23T19:54:50.947030402Z","target":"projects/my-project/locations/us-central1/repositories/my-repo","verb":"delete","apiVersion":"v1"},"done":true,"response":{"@type":"type.googleapis.com/google.protobuf.Empty"}
```

La respuesta es similar a la siguiente:

{"name":"operations/cc3ea26c-9b57-11ed-be0a-2e3b5910efef","metadata":{"@type":"type.googleapis.com/google.cloud.securesourcemanager.v1.OperationMetadata","createTime":"2023-01-23T19:54:49.904779921Z","endTime":"2023-01-23T19:54:50.947030402Z","target":"projects/my-project/locations/us-central1/repositories/my-repo","verb":"delete","apiVersion":"v1"},"done":true,"response":{"@type":"type.googleapis.com/google.protobuf.Empty"}

¿Qué sigue?