OpenAI
此頁面由機器翻譯。查看原文英文文章。

將 GitLab 連接至 ChatGPT 和 Codex

在 ChatGPT 和 Codex 中存取您的 GitLab 專案,以分析和引用程式碼、合併請求、議題及 CI/CD,並對其執行操作。

更新日期:2 days ago

ChatGPT 和 Codex 中的 GitLab 功能目前處於測試階段。

概覽

GitLab 外掛程式讓 ChatGPT 和 Codex 擷取最新的 GitLab 資料,並在獲准的情況下,於已連接使用者有權存取的項目中執行操作。它可用於處理項目、群組、程式碼庫檔案、分支、提交、合併請求、議題、管線、作業及相關討論。

GitLab 外掛程式包含適用於 GitLab.com 的 GitLab 應用程式,以及 GitLab Self-Managed 應用程式範本。外掛程式是使用者安裝的套件,而應用程式則提供連接,用於存取 GitLab 資料及執行操作。

如使用 GitLab Self-Managed 或 GitLab Dedicated,工作區管理員必須先透過範本建立並發佈工作區專用的應用程式,成員才能連接。進一步了解應用程式範本,以及如何設定 GitLab 應用程式範本。

先前支援個人同步功能的 GitLab Issues 應用程式已不再提供。請按照本文的設定步驟連接目前的 GitLab 應用程式。此應用程式會透過與你的提示詞相關的 API 請求擷取資料。

適用範圍

是否可用可能因方案及工作區設定而異。工作區管理員會在 ChatGPT 中設定 GitLab 外掛程式,並控制是否開放使用、哪些人可以使用、啟用哪些操作,以及何時需要核准。

GitLab 外掛程式的功能

讀取 GitLab 資料

ChatGPT 和 Codex 可以:

  • 查看項目和群組。

  • 瀏覽程式碼庫樹狀結構並讀取檔案。

  • 比較分支、提交及差異。

  • 檢視合併請求、核准、議題、備註及討論。

  • 檢查管線、作業、日誌及測試報告。

在 GitLab 中執行操作

視乎工作區設定及 GitLab 權限,ChatGPT 和 Codex 可以:

  • 建立分支及提交。

  • 建立、更新或刪除程式碼庫檔案。

  • 建立或更新合併請求及議題。

  • 新增備註或討論。

  • 核准合併請求、對其進行重定基底,或將其合併。

  • 套用建議。

  • 建立管線,或啟動及重試作業和管線。

可用操作取決於工作區的角色存取權、設定操作及設定核准設定,以及已授予的 OAuth 權限範圍和已連接使用者的 GitLab 權限。

在 ChatGPT 中設定 GitLab

連接至 GitLab.com

  1. 開啟 ChatGPT。

  2. 開啟外掛程式目錄。

  3. 搜尋 GitLab。

  4. 選取安裝外掛程式。

  5. 在 GitLab 頁面上,選取連接。

如有提示,請在 GitLab 中授權 ChatGPT。GitLab 外掛程式會在你授予的 OAuth 權限範圍內,以你的 GitLab 使用者身分執行操作,因此 ChatGPT 和 Codex 只能存取你有權存取的 GitLab 項目和群組。

連接後,你可以在 ChatGPT 或 Codex 中使用 GitLab,查看項目、檔案、合併請求、議題或管線,或要求執行獲准的操作。

如需安裝及管理外掛程式的協助,請參閱:ChatGPT 和 Codex 中的外掛程式。

連接至 GitLab Self-Managed 或 GitLab Dedicated

工作區管理員必須先設定並發佈 GitLab Self-Managed 應用程式範本,使用者才能連接。如需操作指引,請參閱:為 ChatGPT 和 Codex 設定 GitLab Self-Managed 應用程式範本。

中斷 GitLab 連接

  1. 開啟 ChatGPT。

  2. 前往設定 > 外掛程式。

  3. 開啟 GitLab。

  4. 選取解除安裝。

在程式碼審查中審查合併請求

桌面版和網頁版的程式碼審查外掛程式現已提供 GitLab 合併請求審查功能的預覽版。開啟合併請求,查看其變更及審查意見,然後要求 Codex 解釋程式碼或協助解決問題。

GitLab 連接讓你能夠存取 GitLab 資料。程式碼審查外掛程式則提供審查功能。兩者仍受你的工作區設定及 GitLab 權限限制。

目前不提供 GitLab 雲端程式碼審查。連接 GitLab 或在程式碼審查中開啟合併請求,並不會啟用自動雲端審查。

資料與私隱

ChatGPT 和 Codex 如何與 GitLab 配合運作

ChatGPT 和 Codex 會使用 GitLab 外掛程式發出與你的提示詞相關的 API 請求。例如,它們可以列出程式碼庫樹狀結構、擷取特定檔案、讀取合併請求的差異或討論、查看議題,或檢查管線及作業日誌。如果某項已啟用的操作會變更 GitLab,ChatGPT 或 Codex 只有在工作區設定及已連接使用者的 GitLab 權限允許,並已取得所需核准的情況下,才能執行該操作。

模型訓練與 GitLab 內容

根據預設,客戶使用商業產品(包括 ChatGPT Business、Enterprise、Edu 及 API)傳送的內容,不會用於改進我們的模型。如欲進一步了解 OpenAI 如何使用企業資料,請參閱:企業私隱。

使用個人訂閱時,如果已開啟為所有人改進模型,OpenAI 可能會使用你的內容來訓練模型。如欲進一步了解你的資料如何儲存及使用,請參閱:資料控制常見問題。

無論你在 ChatGPT 還是 Codex 中使用此應用程式,GitLab 內容都受相同的工作區資料控制設定規管。

常見問題

GitLab 外掛程式可以讀取哪些內容?

它可以擷取已連接使用者有權存取的 GitLab 資料,包括項目和群組;程式碼庫樹狀結構、檔案、分支、提交和差異;合併請求、議題、備註和討論;以及 CI/CD 管線、作業、日誌和測試報告。實際可存取的內容取決於已啟用的操作及 GitLab 權限。

ChatGPT 和 Codex 能否在 GitLab 中執行操作?

可以,前提是工作區管理員已啟用相關操作,且已取得所有必要核准。視乎設定及你的 GitLab 權限,ChatGPT 和 Codex 可以建立分支及提交;建立、更新或刪除程式碼庫檔案;建立或更新合併請求及議題;新增備註或討論;核准或合併合併請求;套用建議;以及建立管線,或啟動及重試作業和管線。

管理員如何限制外掛程式可執行的操作?

在 ChatGPT 中,工作區管理員可透過角色存取權控制哪些人可以使用應用程式,透過設定操作啟用或停用操作,以及透過設定核准要求指定操作必須經過確認。GitLab 本身的項目及群組權限仍然有效。

ChatGPT 或 Codex 能否讀取特定檔案或合併請求的差異?

可以。請提供項目及檔案名稱或路徑、分支或參照、合併請求網址或內部 ID(IID),或說明你要尋找的程式碼行為。只要已啟用相關外掛程式操作,且你擁有存取權,ChatGPT 或 Codex 就能擷取相關檔案、程式碼庫樹狀結構、提交、差異或合併請求詳細資料。

為甚麼我看不到某個項目?

ChatGPT 和 Codex 只能存取已連接的 GitLab 使用者可見的項目。請確認你已連接正確的 GitLab 帳戶、在 GitLab 中擁有該項目或群組的存取權,並已選取適用於 GitLab.com、GitLab Self-Managed 或 GitLab Dedicated 的正確應用程式。

GitLab 外掛程式是否支援 GitLab Self-Managed 或 GitLab Dedicated?

標準 GitLab 應用程式會連接至 GitLab.com,並可在 ChatGPT 和 Codex 中使用。如使用 GitLab Self-Managed 或 GitLab Dedicated,工作區管理員必須先設定並發佈 GitLab Self-Managed 應用程式範本,使用者才能連接。如需操作指引,請參閱:為 ChatGPT 和 Codex 設定 GitLab Self-Managed 應用程式範本。

如果我的 GitLab 執行個體封鎖網絡流量,該怎麼辦?

  • 目前不提供 GitLab 雲端程式碼審查。

這篇文章對你有幫助嗎?