本頁說明如何建立 GitHub 連線,以及 GitHub 存放區的連結。您可以使用 Google Cloud 控制台或 Google Cloud CLI 完成這些工作。
以下操作說明適用於想要搭配使用 GitHub 原始碼存放區和 Google 的應用程式開發人員、平台管理員和安全管理員。
舉例來說,您可以透過Gemini Code Assist 取得符合程式碼的編碼建議,也可以使用連結的 GitHub 存放區,透過 Firebase 應用程式代管開發網頁應用程式。
如要進一步瞭解 Developer Connect,請參閱這篇文章。
事前準備
-
登入 Google 帳戶。
如果沒有帳戶,請 申請新帳戶。
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Developer Connect API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Developer Connect API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
確認你有 GitHub 帳戶的存取權。
為確保團隊工作安全,建議您使用機器人帳戶或團隊共用的帳戶,完成本指南中的工作,而非個人帳戶。
- 請確認您擁有 GitHub 存放區,或具備共用存放區的管理員層級權限。
- 選用:建立客戶自行管理的加密金鑰 (CMEK),用於加密 Developer Connect 建立的驗證密鑰。
- 選用:如要使用本指南中的指令列操作說明,請完成下列步驟:
- 安裝 Google Cloud CLI。如果您先前已安裝 gcloud CLI,請執行
gcloud components update,確認您擁有最新版本。 - 執行下列指令,建立 Developer Connect 服務帳戶,其中的 PROJECT_ID 是您的Google Cloud 專案 ID:
gcloud beta services identity create \ --service=developerconnect.googleapis.com \ --project=PROJECT_ID
- 安裝 Google Cloud CLI。如果您先前已安裝 gcloud CLI,請執行
啟用 Developer Connect 時,系統也會啟用 Secret Manager API。
必要的角色
如要取得建立連線和連結所需的權限,請要求管理員授予您下列 IAM 角色:
-
如果您不是專案擁有者:
使用者帳戶的開發人員連線管理員 (
roles/developerconnect.admin) 。 -
如果您打算使用 CMEK 加密 Developer Connect 建立的密鑰:
Secret Manager 服務帳戶的「Cloud KMS CryptoKey Encrypter/Decrypter」(Cloud KMS 加密編譯金鑰加密者/解密者) (
roles/cloudkms.cryptoKeyEncrypterDecrypter) 。 -
如果您打算使用 gcloud CLI 完成本指南中的步驟:
Developer Connect 服務帳戶的Secret Manager 管理員角色 (
roles/secretmanager.admin)。 -
如果您打算使用 Google Cloud 控制台完成本指南中的步驟:
專案 IAM 管理員 (
roles/resourcemanager.projectIamAdmin) 使用者帳戶。
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
建立連線
本節說明如何建立 Developer Connect 與 GitHub 之間的連線。如果您使用 Google Cloud 控制台,也可以在完成連線設定後,開始將連結新增至存放區。
如要建立新的 GitHub 連線,請選取下列任一選項:
控制台
請完成下列步驟來啟動連線:
在 Google Cloud 控制台中開啟「Developer Connect」。
Developer Connect 會顯示「Git 存放區」頁面。
- 如果看到原始碼管理服務供應商清單:選取原始碼管理服務供應商,開始設定第一個連線。按一下 GitHub 資訊卡上的「連結」。
如果看到列出現有連線的表格:按一下「建立連線」 >「GitHub」,設定來源程式碼管理供應商。
「建立連線」頁面隨即開啟。
在「Region」(區域),為連線資源選擇區域。
- 在「Name」(名稱) 部分,輸入新連線的名稱。
勾選「啟用符合資料落地規定的連線」核取方塊,讓這個連線符合資料落地規定。
使用 Google Cloud 控制台建立 GitHub 連線時,只要啟用這個核取方塊,連線就會符合資料落地規定。這麼做時,Developer Connect 會建立 GitHub 應用程式
使用 Google Cloud CLI 建立 GitHub 連線時,這些連線不符合資料落地規定。所有其他連線類型均符合資料落地規定。
按一下「顯示更多」即可查看選用設定。
選用步驟:在「Encryption」(加密) 部分中,選取 CMEK 金鑰,加密 Developer Connect 建立的 Secret Manager 密鑰。
選用:根據預設,Developer Connect 可做為 Proxy,對 GitHub 執行 Git 呼叫。如要停用這個選項,請取消勾選「啟用 Developer Connect Proxy」核取方塊。
按一下「繼續」。
按一下「我瞭解並繼續」,同意與 Developer Connect 分享 GitHub OAuth 權杖,並將權杖儲存在 Secret Manager 中。
如果系統要求登入 GitHub,請按照指示操作。
按一下「Authorize Developer Connect」,允許 Google Developer Connect 應用程式存取您的 GitHub 帳戶。
如果沒有看到這項提示,表示這個帳戶已授權。
如果您選取「啟用符合資料落地規定的連線」,系統會提示您建立 GitHub 應用程式。
為這個 GitHub 應用程式命名。
按一下「建立 GitHub 應用程式」。
選取要安裝應用程式的目標 (GitHub 帳戶或機構)。
選取要安裝 GitHub 應用程式的存放區,或選取「所有存放區」,然後按一下「安裝」。
選取要連結至這個連線的存放區,然後按一下「確定」。
按一下「Link」(連結)。
GitHub 會建立權杖,而 Developer Connect 會將權杖以 Secret Manager 密鑰的形式儲存在您的專案中。Google Cloud 如要進一步瞭解如何管理密鑰,請參閱查看密鑰詳細資料。
如果您已啟用資料落地設定,現在會有一個 GitHub 應用程式,您可以點選「連線詳細資料」頁面上的「管理安裝項目」來管理該應用程式。
設定連線
如果您尚未勾選「啟用符合資料落地規定的連線」核取方塊,則必須完成下列步驟。
按照下列操作說明,在 GitHub 帳戶中授予權限,並連結至存放區。網頁瀏覽器中顯示的提示取決於 GitHub 帳戶是否已安裝 Developer Connect GitHub 應用程式。
在「開發人員連結」對話方塊中,完成下列步驟:
如果看到 GitHub 帳戶清單,請按照下列步驟安裝應用程式並連結存放區:
選擇要使用的 GitHub 帳戶。
選取要授予存取權的一或多個存放區。
如果系統提示您重複使用現有的應用程式安裝項目,請完成下列步驟,選擇要在何處設定應用程式:
按一下「GitHub 帳戶」,查看已安裝 Google Developer Connect 應用程式的帳戶。如果螢幕上列出您想要使用的帳戶,請按一下「確認」選擇該帳戶。
如果找不到要使用的帳戶,請按照下列步驟操作:
選擇「將 GitHub 應用程式安裝至其他 GitHub 帳戶」,然後按一下「確認」。
按照 GitHub 的步驟允許安裝應用程式。
選取要授予存取權的一或多個存放區。
對話方塊關閉後,應用程式安裝作業即完成。
連線建立完成後,系統會顯示「連結存放區」頁面。
如要將存放區連結至連線,請完成下列步驟:
在可用存放區清單中,選取要使用的存放區。
按一下 [確定]。
按一下「Link」(連結)。
連結會新增至「連線」頁面,存放區連結則會新增至 Google Cloud 控制台的「存放區」頁面。您可以隨時在現有連結中新增更多連結。
如要設定 Gemini Code Assist,請按照「設定及使用 Gemini Code Assist 程式碼自訂功能」一文中的步驟,繼續完成設定程序。
gcloud
下列工作需要透過網路瀏覽器完成一些動作。
請完成下列步驟來啟動連線:
執行
gcloud developer-connect connections create指令,建立與 GitHub 的連線:gcloud developer-connect connections create CONNECTION_NAME \ --location=REGION \ --github-config-app=APP_TYPE --git-proxy-config-enabled更改下列內容:
- CONNECTION_NAME:連線名稱。
- REGION:連線的區域。
- :要在 GitHub 中安裝的應用程式類型,可選擇
DEVELOPER-CONNECT(搭配 Gemini Code Assist 使用) 或FIREBASE(搭配 Firebase 應用程式代管服務使用)。APP_TYPE --git-proxy-config-enabled:選用旗標,可讓 Developer Connect 做為 Proxy,對 GitHub 執行 Git 呼叫。這項功能為預先發布版。
系統會建立連線名稱。
安裝 Developer Connect GitHub 應用程式,完成連結建立程序。執行下列指令,取得應用程式安裝 URI:
gcloud developer-connect connections describe CONNECTION_NAME \ --location=REGION更改下列內容:
- CONNECTION_NAME:連線名稱。
- REGION:連線的區域。
Developer Connect 會傳回連結,讓您在瀏覽器視窗中完成後續步驟。複製這個連結。
在網路瀏覽器中開啟連結。
按一下「我瞭解並繼續」,同意與 Developer Connect 分享 GitHub OAuth 權杖,並將權杖儲存在 Secret Manager 中。
如果系統要求登入 GitHub,請按照指示操作。
按一下「Authorize Developer Connect」,允許 Google Developer Connect 應用程式存取您的 GitHub 帳戶。
如果沒有看到這項提示,表示這個帳戶已授權。
GitHub 會建立權杖,而 Developer Connect 會將權杖以 Secret Manager 密鑰的形式儲存在您的專案中。Google Cloud 如要進一步瞭解如何管理密鑰,請參閱查看密鑰詳細資料。
如果您已啟用符合資料落地規定的連線,現在會有一個 GitHub 應用程式,您可以點選「連線詳細資料」頁面上的「管理安裝項目」來管理該應用程式。
設定連線
按照下列操作說明,在 GitHub 帳戶中授予權限,並連結至存放區。網頁瀏覽器中顯示的提示取決於 GitHub 帳戶是否已安裝 Developer Connect GitHub 應用程式。
在「開發人員連結」對話方塊中,完成下列步驟:
如果看到 GitHub 帳戶清單,請按照下列步驟安裝應用程式並連結存放區:
選擇要使用的 GitHub 帳戶。
選取要授予存取權的一或多個存放區。
如果系統提示您重複使用現有的應用程式安裝項目,請完成下列步驟,選擇要在何處設定應用程式:
按一下「GitHub 帳戶」,查看已安裝 Google Developer Connect 應用程式的帳戶。如果螢幕上列出您想要使用的帳戶,請按一下「確認」選擇該帳戶。
如果找不到要使用的帳戶,請按照下列步驟操作:
選擇「將 GitHub 應用程式安裝至其他 GitHub 帳戶」,然後按一下「確認」。
按照 GitHub 的步驟允許安裝應用程式。
選取要授予存取權的一或多個存放區。
對話方塊關閉後,應用程式安裝作業即完成。
驗證連線
執行下列指令,確認 GitHub 連線是否已建立:
gcloud developer-connect connections describe CONNECTION_NAME \
--location=REGION
更改下列內容:
- CONNECTION_NAME:連線名稱。
- REGION:連線的區域。
Developer Connect 會在 installationState 欄位中傳回狀態。如果這個欄位的值為 COMPLETE,表示應用程式安裝完成。否則,Developer Connect 會傳回 URI,讓您返回瀏覽器中的設定。
完成連結後,請按照「將存放區連結新增至現有連線」中的操作說明,選擇要連結的存放區。
在現有連結中新增存放區連結
建立與 GitHub 的連線後,您就可以連結至存放區。之後可以視需要重複這些步驟,連結其他存放區。
如要在現有 GitHub 連線上建立存放區連結,請選取下列其中一個選項:
控制台
在 Google Cloud 控制台中開啟「Repositories」(存放區) 頁面。
按一下「連結存放區」。
「連結 Git 存放區」窗格隨即開啟。
在連線清單中選擇連線。
按一下「繼續」。
在存放區清單中,選取要連結的存放區。
點選「建立」。
Developer Connect 會建立存放區連結,並顯示在 Google Cloud 控制台中。
gcloud
執行下列指令:
gcloud developer-connect connections git-repository-links create REPO_NAME \
--clone-uri=REPO_URI \
--connection=CONNECTION_NAME \
--location=REGION
更改下列內容:
- REPO_NAME:存放區名稱。
- REPO_URI:GitHub 存放區的連結。
例如:
https://github.com/cloud-build/test-repo.git。 - CONNECTION_NAME:連線名稱。
- REGION:連線的區域。
Developer Connect 會建立存放區連結。
如要列出連結的存放區,請執行 developer-connect connections git-repository-links list 指令。
如要設定 Gemini Code Assist,請按照「設定及使用 Gemini Code Assist 程式碼自訂功能」一文中的步驟,繼續完成設定程序。
資料共用
連結至這項連線的 Google Cloud 資源內容可能會移轉至 GitHub。這項聲明適用於使用這項連線的所有資源,包括現有和日後的資源。如要停止與 GitHub 分享資訊,請在 Google Cloud 控制台或 gcloud CLI 中刪除 Developer Connect 連線,並在 GitHub 中撤銷存取權。
後續步驟
- 完成 Gemini Code Assist 程式碼自訂功能設定。
- 瞭解 Gemini Code Assist 如何協助您加快軟體開發速度。
- 探索透過 Developer Connect 提供的其他整合功能。