Migra a un repositorio de Git nuevo

Si tienes un proyecto de LookML que está conectado a un repositorio de Git, te recomendamos mover el LookML de ese proyecto a un repositorio nuevo.

Existen dos enfoques posibles para este problema, que se describen en las siguientes secciones:

  • Restablece la conexión de Git: Esta solución simple conserva todas las ramas personales y compartidas en Looker y es adecuada para la mayoría de los casos de uso.
  • Clona el repositorio de Git: Se prefiere esta solución avanzada cuando es importante poder ver de inmediato el historial completo de todas las ramas que se usaron en la IU de tu proveedor de Git.

Solución simple: restablecer la conexión de Git

Si restableces la conexión de Git y, luego, ingresas una nueva URL del repositorio de Git, LookML se moverá a ese repositorio. Todos los cambios guardados en las ramas personales y compartidas se mantendrán y se podrán usar en Looker. Al principio, la IU de tu proveedor de Git solo mostrará la rama principal y su historial. Otras ramas y su historial aparecerán la próxima vez que se realice una confirmación en esa rama. Para migrar a un repositorio nuevo con este método, sigue estos pasos:

  1. Navega a la página Configuración del proyecto de ese proyecto.
  2. En la pestaña Configuración de la página Configuración del proyecto, selecciona el botón Restablecer conexión de Git.
  3. En la página Configurar Git, ingresa la URL de Git nueva (la URL de Git del repositorio al que deseas migrar) y, luego, selecciona Continuar.
  4. Si usas SSH para conectarte, asegúrate de seleccionar Restablecer clave. De lo contrario, se usará la misma clave SSH, lo que puede causar un conflicto si el mismo servicio aloja ambos repositorios (en este caso, GitHub).
  5. Para las conexiones SSH, agrega la nueva clave de implementación a tu repositorio de Git y asegúrate de otorgar acceso de escritura en la configuración de la clave de implementación del repositorio de Git. Si usas HTTPS, ingresa las credenciales de acceso de tu repositorio de Git. Consulta la página de documentación Configura y prueba una conexión de Git para obtener instrucciones completas sobre cómo configurar Git.

Una vez que hayas seguido estos pasos, tu proyecto se conectará al repositorio nuevo.

Nota: LookML de tu proyecto no aparecerá en la rama principal del repositorio nuevo hasta que implementes tu proyecto en producción. A menos que lo implementes en producción, tu código de LookML solo aparecerá en tu rama de desarrollo en el nuevo repositorio después de que confirmes el código o lo envíes a un entorno remoto (un comando de Git disponible en el panel Git Actions).

Solución avanzada: clonación del repositorio

La solución simple descrita anteriormente conservará el historial de todas las ramas, pero, en un principio, solo la rama principal y su historial serán visibles en la IU de GitHub. Una vez que se realiza una confirmación en una rama personal o compartida en Looker, esa rama y su historial aparecerán en la IU de GitHub. Se necesita una solución más avanzada para ver de inmediato todas las ramas y su historial a través de la IU de GitHub.

En primer lugar, debes tener acceso al repositorio original en GitHub (o en otro proveedor de Git). Puedes encontrar la URL del repositorio en la parte inferior de la configuración del proyecto o de su página de configuración.

En este ejemplo, supongamos que git@github.com:looker/PROJECT_NAME.git es el repositorio original y git@github.com:your_organization/PROJECT_NAME.git es el repositorio nuevo:

  1. Clona el repositorio original en tu computadora y abre las ramas que deseas conservar.

    git clone git@github.com:looker/PROJECT_NAME.git
    cd PROJECT_NAME
    git checkout master
    git pull
    
  2. Restablece la URL remota del repositorio. Consulta la documentación de GitHub para obtener más información.

    git remote -v
    

    Esto te muestra los controles remotos a los que apunta tu repositorio actualmente. Los resultados se verán más o menos de la siguiente manera:

    origin git@github.com:looker/PROJECT_NAME.git (fetch)
    origin git@github.com:looker/PROJECT_NAME.git (push)
    
  3. A continuación, establece el origen remoto al nuevo repositorio:

    git remote set-url origin git@github.com:your_organization/PROJECT_NAME.git
    git push origin master
    
  4. Ahora, a fin de incorporar el historial y los archivos para las ramas de desarrollo, deberás usar git checkout dev_branch_name y git push origin para cada rama dev. Esto se puede hacer manualmente o de manera indefinida en una secuencia de comandos, como se muestra en el siguiente ejemplo:

    #!/bin/bash
    for branch in $(git branch --all | grep '^\s*remotes' | egrep --invert-match '(:?HEAD|master)$'); do
    git branch --track "${branch##*/}" "$branch"
    done
    

    Luego, envía las ramas con git push --all.

  5. Restablece la conexión de Git en Looker a esta nueva URL y configura una clave de implementación en este nuevo repositorio (consulta los pasos de la sección de solución simple más arriba en esta página).