Jika memiliki project LookML yang terhubung ke repositori Git, Anda dapat memindahkan LookML project tersebut ke repositori baru.
Ada dua kemungkinan pendekatan untuk masalah ini, yang keduanya dijelaskan di bagian berikut:
- Reset koneksi Git: Solusi sederhana ini mempertahankan semua cabang pribadi dan bersama di Looker serta cocok untuk sebagian besar kasus penggunaan.
- Meng-clone repositori Git: Solusi lanjutan ini lebih disukai jika Anda ingin segera melihat histori lengkap semua cabang yang pernah digunakan melalui UI penyedia Git Anda.
Solusi sederhana: Mereset koneksi Git
Jika Anda mereset koneksi Git dan memasukkan URL repositori Git baru, LookML akan dipindahkan ke repositori tersebut. Semua perubahan yang disimpan di cabang pribadi dan bersama akan dipertahankan dan dapat digunakan di Looker. Pada awalnya, UI penyedia Git Anda hanya akan menampilkan cabang master dan historinya. Cabang lain dan historinya akan muncul saat berikutnya commit dilakukan ke cabang tersebut. Untuk bermigrasi ke repositori baru menggunakan metode ini, ikuti langkah-langkah berikut:
- Buka halaman Project Settings untuk project tersebut.
- Di tab Configuration pada halaman Project Settings, pilih tombol Reset Git Connection.
- Di halaman Configure Git, masukkan URL Git baru (URL Git untuk repositori yang ingin Anda migrasikan), lalu pilih Continue.
- Jika Anda menggunakan SSH untuk terhubung, pastikan untuk memilih Reset Key. Jika tidak, kunci SSH yang sama akan digunakan, yang dapat menyebabkan konflik jika kedua repositori dihosting oleh layanan yang sama (dalam hal ini, GitHub).
- Untuk koneksi SSH, tambahkan kunci deployment baru ke repo Git Anda, dan pastikan untuk memberikan akses tulis di setelan kunci deployment repo Git. Jika Anda menggunakan HTTPS, masukkan kredensial login untuk repo Git Anda. Lihat halaman dokumentasi Menyiapkan dan menguji koneksi Git untuk mengetahui petunjuk lengkap tentang cara menyiapkan Git.
Setelah Anda mengikuti langkah-langkah ini, project Anda akan terhubung ke repositori baru.
Catatan: LookML project Anda tidak akan muncul di cabang master repositori baru hingga Anda men-deploy project ke produksi. Kecuali jika Anda men-deploy ke produksi, kode LookML hanya akan muncul di cabang pengembangan di repositori baru setelah Anda melakukan commit kode, atau mendorongnya ke jarak jauh (perintah Git yang tersedia di panel Tindakan Git).
Solusi lanjutan: Meng-clone repositori
Solusi sederhana yang dijelaskan sebelumnya akan mempertahankan histori semua cabang, tetapi hanya cabang master dan historinya yang akan terlihat di UI GitHub pada awalnya. Setelah commit dibuat di cabang pribadi atau bersama di Looker, cabang tersebut dan historinya akan muncul di UI GitHub. Solusi yang lebih canggih diperlukan untuk langsung melihat semua cabang dan historinya melalui UI GitHub.
Pertama, Anda harus memiliki akses ke repositori asli di GitHub (atau penyedia Git lainnya). Anda dapat menemukan URL repositori di bagian bawah halaman setelan project atau konfigurasi project.
Untuk contoh ini, anggap git@github.com:looker/PROJECT_NAME.git
adalah repo asli dan git@github.com:your_organization/PROJECT_NAME.git
adalah repo baru:
-
Clone repositori asli ke komputer Anda, dan download cabang yang ingin Anda pertahankan.
git clone git@github.com:looker/PROJECT_NAME.git cd PROJECT_NAME git checkout master git pull
-
Reset URL jarak jauh repo. Lihat dokumentasi GitHub untuk mengetahui informasi selengkapnya.
git remote -v
Tindakan ini akan menampilkan repositori jarak jauh yang saat ini dituju repo Anda. Hasilnya akan terlihat seperti ini:
origin git@github.com:looker/PROJECT_NAME.git (fetch) origin git@github.com:looker/PROJECT_NAME.git (push)
-
Selanjutnya, tetapkan remote origin ke repo baru:
git remote set-url origin git@github.com:your_organization/PROJECT_NAME.git git push origin master
-
Sekarang, untuk memasukkan histori dan file untuk cabang developer, Anda harus melakukan
git checkout dev_branch_name
dangit push origin
untuk setiap cabang developer. Hal ini dapat dilakukan secara manual atau dalam loop dalam skrip seperti yang ditunjukkan dalam contoh berikut:#!/bin/bash for branch in $(git branch --all | grep '^\s*remotes' | egrep --invert-match '(:?HEAD|master)$'); do git branch --track "${branch##*/}" "$branch" done
Kemudian, dorong cabang dengan
git push --all
. - Reset koneksi Git di Looker ke URL baru ini dan siapkan kunci deployment di repo baru ini (lihat langkah-langkah di bagian solusi sederhana sebelumnya di halaman ini).