Se você tiver um projeto do LookML conectado a um repositório do Git, poderá mover o LookML desse projeto para um novo repositório.
Há duas abordagens possíveis para esse problema, ambas descritas nas seções a seguir:
- Redefinir a conexão do Git: essa solução simples preserva todas as ramificações pessoais e compartilhadas no Looker e é adequada para a maioria dos casos de uso.
- Clone o repositório Git: essa solução avançada é preferível quando é importante ver imediatamente o histórico completo de todas as ramificações já usadas pela UI do seu provedor Git.
Solução simples: redefinir a conexão do Git
Se você redefinir a conexão do Git e inserir um novo URL do repositório Git, o LookML será movido para esse repositório. Todas as mudanças salvas em branches pessoais e compartilhadas serão mantidas e utilizáveis no Looker. No início, UI do seu provedor Git mostrará apenas a ramificação mestre e o histórico dela. Outras ramificações e o histórico delas aparecerão na próxima vez que uma confirmação for feita nela. Para migrar para um novo repositório usando esse método, siga estas etapas:
- Navegue até a página Configurações do projeto do projeto.
- Na guia Configuração da página Configurações do projeto, selecione o botão Redefinir conexão Git.
- Na página Configurar Git, insira o novo URL do Git (o URL do Git do repositório para o qual você quer migrar) e selecione Continuar.
- Se você estiver usando SSH para se conectar, selecione Redefinir chave. Caso contrário, a mesma chave SSH será usada, o que pode causar um conflito se os dois repositórios forem hospedados pelo mesmo serviço (neste caso, GitHub).
- Para conexões SSH, adicione a nova chave de implantação ao seu repositório Git e conceda acesso de gravação nas configurações da chave de implantação do repositório Git. Se você estiver usando HTTPS, insira as credenciais de login do seu repositório Git. Consulte a página de documentação Como configurar e testar uma conexão do Git para ver instruções completas sobre como configurar o Git.
Depois disso, seu projeto será conectado ao novo repositório.
Observação:o projeto LookML não vai aparecer na ramificação mestre do novo repositório até que você implante o projeto em produção. A menos que você implante em produção, seu código LookML só vai aparecer na ramificação de desenvolvimento no novo repositório depois que você confirmar o código ou enviá-lo para o modo remoto (um comando Git disponível no painel Ações do Git).
Solução avançada: como clonar o repositório
A solução simples descrita anteriormente preserva o histórico de todas as ramificações, mas apenas a ramificação mestre e o histórico dela ficarão visíveis na interface do GitHub inicialmente. Depois que uma confirmação é feita em uma ramificação pessoal ou compartilhada no Looker, essa ramificação e o histórico dela aparecem na interface do GitHub. É necessária uma solução mais avançada para visualizar imediatamente todas as ramificações e o histórico delas na interface do GitHub.
Primeiro, você precisa ter acesso ao repositório original no GitHub (ou em outro provedor Git). O URL do repositório fica na parte de baixo das configurações ou da página de configuração do projeto.
Neste exemplo, suponha que git@github.com:looker/PROJECT_NAME.git
seja o repositório original e git@github.com:your_organization/PROJECT_NAME.git
seja o novo:
-
Clone o repositório original no seu computador e extraia as ramificações que quer preservar.
git clone git@github.com:looker/PROJECT_NAME.git cd PROJECT_NAME git checkout master git pull
-
Redefina o URL remoto do repositório. Consulte a documentação do GitHub para saber mais.
git remote -v
Isso mostra os controles remotos para o qual seu repositório está apontando. Os resultados vão ser parecidos com estes:
origin git@github.com:looker/PROJECT_NAME.git (fetch) origin git@github.com:looker/PROJECT_NAME.git (push)
-
Em seguida, defina o controle remoto de origem para o novo repositório:
git remote set-url origin git@github.com:your_organization/PROJECT_NAME.git git push origin master
-
Agora, para trazer o histórico e os arquivos das ramificações de desenvolvimento, é necessário adicionar
git checkout dev_branch_name
egit push origin
a cada uma delas. Isso pode ser feito manualmente ou em um loop em um script, como mostrado no exemplo a seguir:#!/bin/bash for branch in $(git branch --all | grep '^\s*remotes' | egrep --invert-match '(:?HEAD|master)$'); do git branch --track "${branch##*/}" "$branch" done
Em seguida, envie as ramificações com
git push --all
. - Redefina a conexão Git no Looker com esse novo URL e configure uma chave de implantação no novo repositório. Consulte as etapas na seção de solução simples anteriormente nesta página.