建立新專案時,該專案只會處於開發模式,讓您在不會影響其他使用者的安全環境中開發模型。準備好發布專案後,下一步就是設定 Git 連線。
為專案設定 Git 連線後,您就能將 LookML 部署至正式模式,讓其他使用者探索資料模型、建構資訊主頁,以及在模型中新增 LookML。如要加快設定速度,請使用裸露存放區。如要進行更完善的 Git 整合,請自行建立 Git 存放區,然後按照本頁的操作說明將其連結至 Looker 執行個體。
將 Looker 與 Git 整合
Looker 會使用 Git 記錄變更並管理檔案版本。每個 LookML 專案都對應至一個 Git 存放區。使用者處於開發模式時,他們會處於自己的 Git 分支。
針對 LookML 來源檔案管理,Looker 可與任何使用 SSH 金鑰或 HTTPS 驗證的 Git 供應商搭配使用。無論您使用哪個平台,一般步驟都相同。本頁面會以 GitHub 為範例,說明在建立 Git 存放區後,如何將 Looker 專案連結至 Git。
如要存取 Git 整合選項,您必須啟用開發模式。
您可以使用下列任一通訊協定設定 Git 整合:
- HTTPS:超文本傳輸安全通訊協定。透過 HTTPS,Looker 會使用您提供的使用者名稱和密碼 (或存取權杖) 存取 Git 存放區,如「使用 HTTPS 連線至 Git」一文所述。
- SSH:安全殼層。透過 SSH,Looker 會使用您透過 Git 供應商網站產生的部署金鑰存取 Git 存放區,如「使用 SSH 連線至 Git」一文所述。
使用 HTTPS 連線至 Git
如果 LookML 專案已設定 HTTPS 驗證,Looker 會使用您在 Git 供應商中設定的一或多個使用者帳戶,連線至該供應商。Looker 會使用使用者名稱和密碼 (或存取權權杖) 登入 Git 供應器,並代表 LookML 開發人員執行 Git 作業。
如果您的 Git 帳戶使用雙重驗證功能,您可以前往 Git 供應商,建立存取權杖來取代密碼。請參閱「設定啟用 2FA 的 HTTPS Git 連線」社群文章,瞭解如何為常見的 Git 供應商建立個人存取權杖。
透過 HTTPS 驗證,您可以將 LookML 專案設定為使用單一 Git 帳戶,用於整個專案,也可以將專案設定為使用開發人員的個別 Git 帳戶,用於執行 Git 作業。
請注意以下 GitHub HTTPS 驗證事項:
- GitHub 不接受帳戶密碼,無法在 github.com 上驗證 Git 作業。詳情請參閱 GitHub 的部落格文章。如要透過 HTTPS 將 Looker 專案連結至 GitHub,請使用 GitHub 中的開發人員設定建立個人存取權杖。
- Looker 不支援 GitHub 的精細個人存取權杖。如要透過 HTTPS 將 Looker 專案連結至 GitHub,請在建立個人存取權杖時使用 GitHub 的「權杖 (傳統)」選項。
單一帳戶 HTTPS 驗證
如果您使用單一 Git 帳戶設定 LookML 專案,Looker 會使用該 Git 帳戶登入 Git 供應商,代表開發人員提交變更。Looker 會使用開發人員的 Looker 使用者名稱進行這些提交,方便您瞭解每項提交是由哪位開發人員完成。您可以在 Git 供應者的介面上查看專案的提交記錄,也可以在 Looker IDE 的 Git 選單中選取「History」選項。如要進一步瞭解 Looker 中的 Git 選單,請參閱「在 Looker 中執行 Git 指令」。
針對單一帳戶 HTTPS 驗證,您指定的 Git 使用者帳戶必須具備 Git 存放區的讀取和寫入權限。LookML 開發人員本身不需要擁有 Git 使用者帳戶。
使用使用者屬性進行多個帳戶 HTTPS 驗證
如果您使用多個帳戶設定 LookML 專案,LookML 專案會使用每位 Looker 開發人員的個別 Git 帳戶執行 Git 作業。您也需要設定一個至少具備讀取權限的一般 Git 使用者帳戶,Looker 會使用這個帳戶來擷取檔案的正式版本。
如要使用使用者屬性進行 Git 驗證,請完成下列工作和規定:
- 每位 LookML 開發人員都必須在 Git 供應商中擁有自己的使用者帳戶。每個 Git 使用者帳戶都必須擁有專案存放區的讀寫權限。
- Looker 管理員必須設定 Looker 使用者帳戶,並使用與 Git 使用者名稱和 Git 密碼 (或 Git 使用者帳戶已啟用雙重驗證功能的話,則是存取權杖) 相對應的使用者屬性。
- Git 帳戶密碼 (或存取權杖) 的使用者屬性必須隱藏。建立密碼或存取權存證屬性時,請選取「隱藏值」選項下方的「是」,然後在「網域許可清單」欄位中輸入 Git 供應商網址。
- 每位 Looker 開發人員都必須填入 Git 名稱和密碼 (或存取權權杖) 的使用者屬性。Looker 管理員或 Looker 使用者可以設定使用者屬性。
下列範例顯示「使用者屬性」管理員頁面,Looker 管理員已為 Git 使用者名稱和使用者存取權權杖設定使用者屬性。
以下範例顯示 Looker 使用者的「帳戶」頁面,其中使用者已在使用者屬性欄位中輸入 Git 憑證。
設定 HTTPS Git 驗證
如要設定使用 HTTPS Git 驗證的 LookML 專案,請按照下列步驟操作:
取得 Git 存放區的 HTTPS 網址。以 GitHub 為例,如果是新的存放區 (尚未包含任何檔案的存放區),GitHub 會在初始設定中顯示網址。請務必選取「Code」分頁標籤中的「HTTPS」按鈕,以便取得 HTTPS 網址,然後選取「Copy URL to clipboard」圖示,將網址複製到剪貼簿。
對於現有的 GitHub 存放區 (已包含檔案的存放區),您可以前往存放區的「Code」分頁,然後選取「Code」按鈕,查看 HTTPS 網址。請務必選取「HTTPS」HTTPS連結。您可以選取「複製網址到剪貼簿」圖示,將 HTTPS 網址複製到剪貼簿。
前往 LookML 專案,然後選取導覽列中的「設定」圖示。
在「Project Configuration」頁面的「Configuration」分頁中,點選「Configure Git」按鈕 (適用於新專案) 或「Reset Git Connection」按鈕 (適用於先前已連線至 Git 的現有專案)。
選取「Configure Git」或「Reset Git Connection」按鈕,開啟「Configure Git」頁面。
重設 Git 連線後,主分支的 Git 記錄會保留。當 Looker 開發人員拉取、合併及部署時,也會保留每位開發人員的個人分支記錄。如要保留所有分支的記錄,請參閱「遷移至新的 Git 存放區」最佳做法頁面。
在 Looker 的「Configure Git」頁面中,將 Git 存放區的 HTTPS 網址貼到「Repository URL」欄位,然後選取「Continue」。
Looker 會偵測您的 Git 供應工具,並在視窗中更新 Git 存放區的相關資訊。
如果 Looker 無法成功偵測您的 Git 供應商,系統會要求您從下拉式選單中選擇。
選取 Git 登入選項:
- 使用單一固定的使用者名稱和密碼/符記組合 (請參閱「單一帳戶 HTTPS 驗證」)。
- 使用使用者屬性做為使用者名稱和密碼/符記 (請參閱「使用者屬性 HTTPS 驗證」)。
在「使用者名稱」和「密碼」/「個人存取權杖」欄位中,輸入 LookML 專案用來存取 Git 的憑證。無論 Git 登入設定為何,都必須執行以下操作:
- 如果您選取「使用單一固定的使用者名稱和密碼/個人存取權杖組合」,Looker 例項會在所有 Git 作業中使用這個 Git 使用者名稱和密碼 (或存取權杖)。這個 Git 使用者帳戶必須具備 Git 存放區的讀取及寫入權限。
- 如果您選取「使用使用者屬性做為使用者名稱和密碼/個人存取權杖」,Looker 例項會使用這些 Git 使用者名稱和密碼 (或存取權杖) 來擷取存放區的正式版。這個 Git 使用者帳戶至少必須具備 Git 存放區的讀取權限。
如果您的 Git 帳戶使用雙重驗證功能,或是您使用 GitHub (需要使用個人存取權杖而非密碼),可以前往 Git 供應商建立存取權杖,以取代密碼。請參閱「設定啟用 2FA 的 HTTPS Git 連線 」社群文章,瞭解如何為常見的 Git 供應商建立個人存取權杖。
如果您選取「使用使用者屬性做為使用者名稱和密碼/個人存取權權杖」,Looker 會在「開發模式憑證」部分顯示「使用者名稱使用者屬性」和「個人存取權權杖使用者屬性」下拉式選單。使用下拉式選單,為個別開發人員的 Git 憑證選取使用者屬性。
(Looker 使用者可以在「帳戶」頁面中編輯使用者屬性欄位的值,Looker 管理員則可以在「使用者」管理員頁面中編輯使用者的使用者屬性值)。
選取「繼續設定」按鈕。
您的 LookML 專案現在已設定 Git。接著,您可以驗證 LookML,然後建立初始提交內容並部署至正式版,讓專案在正式版模式中運作。您也可以:
使用 SSH 連線至 Git
您可以使用 SSH 驗證功能為 Git 供應工具建立部署金鑰。Looker 會產生安全殼層金鑰組,並在 UI 中顯示公開金鑰,如步驟 4所示。Looker 會使用該部署金鑰登入 Git 供應商,代表 Looker 開發人員提交變更。Looker 會使用開發人員的 Looker 使用者名稱進行提交,方便您瞭解每項提交是由哪位開發人員所為。您可以在 Git 供應者的介面上查看專案的提交記錄,也可以在 Looker IDE 的 Git 選單中選取「History」選項。如要進一步瞭解 Looker 中的 Git 選單,請參閱「在 Looker 中執行 Git 指令 」。
如要設定使用 SSH Git 驗證機制的 LookML 專案,請按照下列步驟操作:
- 開啟專案或建立新的 LookML 專案。
- 在專案中,選取左側圖示選單中的「設定」圖示,即可開啟「專案設定」頁面。
在「Project Configuration」頁面中,執行下列任一操作,即可開啟「Configure Git」頁面:
- 如果專案沒有 Git 連線,請選取「Configure Git」按鈕。
- 如果專案已設定 Git 連線,請選取「Reset Git Connection」按鈕。
重設 Git 連線後,主分支的 Git 記錄會保留。當 Looker 開發人員拉取、合併及部署時,也會保留每位開發人員的個人分支記錄。如要保留所有分支的記錄,請參閱「遷移至新的 Git 存放區」最佳做法頁面。
取得 Git 存放區的 SSH 網址。以下是常見 Git 供應工具的格式:
- GitHub:
git@github.com:<organization-name>/<repository-name>.git
- GitHub Enterprise:
git@example.com:<organization-name>/<repository-name>.git
- Cloud Source Repositories:
ssh://username@example.com@source.developers.google.com:2022/p/<project-id>/r/<repository-name>
- GitLab:
git@gitlab.com:<organization-name>/<repository-name>.git
- Bitbucket:
git@bitbucket.org:<organization-name>/<repository-name>.git
- Phabricator:
ssh://username@example.com/diffusion/MYCALLSIGN/<repository-name>.git
在 GitHub 的情況下,如果是新的存放區 (尚未包含任何檔案的存放區),GitHub 會在「Code」分頁中顯示 SSH 網址,做為初始設定的一部分。請務必選取「SSH」SSH按鈕,取得 SSH 網址,然後選取剪貼簿圖示,將網址複製到剪貼簿。
如要查看現有的 GitHub 存放區 (已包含檔案的存放區) 的 SSH 網址,請前往存放區的「Code」分頁,然後選取「Code」按鈕。請務必選取「Use SSH」連結。您可以選取剪貼簿圖示,將內容複製到剪貼簿。
- GitHub:
在 Looker 的「Configure Git」頁面中,將 Git 存放區的 SSH 網址貼到「Repository URL」欄位,然後選取「Continue」。
只要在 Git 網址中加入非標準的連接埠號碼,就能搭配 Looker 使用含有自訂或非標準 Git 連接埠的網址。例如:
ssh://git@corporate.git.server.com:22/myorganization/myproject.git
您必須加入
ssh://
,才能正常運作。Looker 會偵測您的 Git 供應工具,並顯示存放區的部署金鑰。(如果 Looker 無法成功偵測 Git 供應工具,系統會提示您從下拉式選單中選擇。)將部署金鑰複製到剪貼簿,然後選取「Deploy Key settings for your repository」連結,開啟 GitHub 存放區的「Deploy keys」頁面。
在 GitHub 的「Settings」分頁標籤「Deploy keys」頁面中,選取「Add deploy key」按鈕:
GitHub 會顯示「Deploy keys / Add new」頁面。
新增部署金鑰的標題。名稱不重要,但建議您加入「Looker」和專案名稱,方便日後追蹤。
貼上從 Looker 複製的部署金鑰。
選取「允許寫入存取權」選項。
選取「新增鍵」按鈕。(此時,Git 供應商可能會提示您輸入密碼。如果是,請輸入密碼,然後選取「確認密碼」。
GitHub 會顯示已為存放區新增的所有部署金鑰。
返回 Looker 視窗,然後在「Configure Git」頁面中選取「Test and Finalize Setup」。
您可以在此處嘗試再次設定部署金鑰,也可以選取「略過測試並完成設定」,保留目前的設定。
您的 LookML 專案現在已設定 Git。接著,您可以驗證 LookML,然後建立初始提交內容並部署至正式版,讓專案在正式版模式中運作。您也可以:
設定裸 Git 存放區
如果您尚未建立遠端 Git 存放區,或是只想快速完成設定,讓其他人能使用您的 LookML,可以設定裸露 Git 存放區。設定裸露 Git 存放區會在 Looker 執行個體上建立本機 Git 存放區,而不是連線至遠端存放區。
選取建立裸機存放區的選項後,Looker 會在 Looker 伺服器上建立存放區,並開始存放區的 Git 記錄。
在產生模型的過程中建立新專案時,系統會自動為專案設定裸機存放區。
如要使用裸 Git 存放區設定 LookML 專案,請按照下列步驟操作:
- 開啟專案或建立新的 LookML 專案。
- 在專案中,選取左側圖示選單中的「設定」圖示,即可開啟「專案設定」頁面。
在「Project Configuration」頁面中,執行下列任一操作,即可開啟「Configure Git」頁面:
- 如果專案沒有 Git 連線,請選取「Configure Git」按鈕。
- 如果專案已設定 Git 連線,請選取「Reset Git Connection」按鈕。
重設 Git 連線後,主分支的 Git 記錄會保留。當 Looker 開發人員拉取、合併及部署後,也會保留每位開發人員的個人分支記錄。如要保留所有分支的記錄,請參閱「遷移至新的 Git 存放區」最佳做法頁面。
在「設定 Git」頁面底部選取「改為設定裸露存放區」。
在「Configure Bare Git Repository」對話方塊中,選取「Create Repository」。
建立 Git 存放區後,Looker 會顯示「Bare Repository Created」對話方塊。
您的 LookML 專案現在已設定 Git。接著,您可以驗證 LookML,然後建立初始提交內容並部署至正式版,讓專案在正式版模式中運作。您也可以:
如果專案已設定為使用裸機存放區,您可以隨後使用「Reset Git Connection」,將專案連線至 Git 供應器 (請參閱使用 HTTPS 或 SSH 的程序)。不過,請勿連線至已含有 Git 記錄的 Git 存放區。如果您已設定含有裸機存放區的 LookML 專案,Looker 會在 Looker 伺服器上建立存放區,並啟動存放區的 Git 記錄。如果之後將 LookML 專案連結至含有 Git 記錄的 Git 存放區,Looker 將無法調和這兩個 Git 記錄,您也無法執行任何 Git 操作。
將新的 LookML 專案連結至非空的 Git 存放區
設定 Git 版本控制是建立新 LookML 專案的重要步驟。通常,每個專案都應有自己的存放區。不過,您可能需要使用含有現有 LookML 的 Git 存放區設定專案,例如在下列情況下:
- 在執行個體之間移動現有 LookML 專案
- 從損壞或已停用的 LookML 專案復活程式碼,以便在新專案中使用
本節將說明如何設定新的 LookML 專案,並使用現有的非空 Git 存放區,以利後續 LookML 開發作業。
- 選取「Blank Project」做為起點,即可建立新的 LookML 專案。空白專案是起點,因為它會從現有存放區填入 LookML 物件,而不是從資料庫結構定義或 SQL 查詢填入。
- 使用 HTTPS 或 SSH 為專案設定 Git,並在「Configure Git」頁面的「Repository URL」部分使用非空專案的網址。
- 為專案設定 Git 後,請在「Git Actions」面板中從正式環境提取。
- 從正式版環境拉取後,請選取「Deploy to Production」。
您對專案中的 LookML 所做的變更不會影響原始存放區,而是會儲存在您本機版本的存放區中。
如果您想使用特定的公開存放區做為空白 LookML 專案的基礎,但沒有該存放區的寫入權限,請按照「建立新的 LookML 專案」說明文件的「複製公開 Git 存放區」一節說明操作。
如果您要設定在多個執行個體中使用單一存放區的 Git 工作流程,請參閱社群文章「在多個執行個體中使用單一存放區的 Git 工作流程:開發、測試和實際作業」,瞭解詳情。
測試 Git 連線
Looker 提供 Git 連線測試,可用於驗證您的 Git 連線。Git 連線測試會驗證您是否已設定正確的 Git 網址,以及 Looker 是否可存取 Git 主機。Git 連線測試也會驗證您是否已提供有效的 Git 部署金鑰,以及該部署金鑰是否具有 Git 存放區的寫入權限。
如果 Looker 無法連線至 Git 存放區,Git 按鈕會顯示「Test Git Connection」文字,提示您排解連線問題。
您也可以在「Git 動作」面板中選取「測試 Git 連線」,存取 Git 連線測試工具:
接著,Git 連線測試工具會顯示測試 Git 連線的步驟:
- 檢查 Git 遠端
- Git 服務的主機名稱會解析
- 與 Git 服務的網路連線正常運作
- 驗證授權憑證
- 確保憑證允許寫入存取權
如果步驟執行成功,Looker 會在步驟左側顯示綠色勾號。如果步驟執行失敗,Looker 會在步驟左側顯示紅色勾號,並顯示錯誤訊息。
以下範例顯示成功的測試:
在下列範例中,Git 存放區並未為 Looker 連線設定部署金鑰。前三個步驟左側的綠色勾號表示這些步驟已成功完成:
Examine git remote
Host name for git service will resolve
Networking to the git service is operational
最後兩個步驟左側的紅色勾號表示這些步驟失敗:
Verify authorization credentials
Ensure credentials allow write access