> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kasoftware.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Git 版本控制設定

> 如何為知行之橋配置基於 Git 的版本控制。

export const cloudEnv = false;

export const siteNameShort = "知行之橋";

export const siteName = "知行之橋";

{!cloudEnv && (
<p>可以在 {siteName} 中使用<a href="../git-version-control">基於 Git 的版本控制</a>，實現配置追蹤、審計追蹤和環境管理。在使用之前必須安裝 Git。有關說明，請參閱<a href="../git-version-control#前提條件">前提條件</a>。</p>
)}

要完成配置，請導航至**設定 > 高階 > Git 版本控制**，然後點選**配置**。

{cloudEnv ? (
<>
  <img src="/public/images/settings_git_cloud.png" alt="Git 版本控制配置窗格" width="400" />
  <p>請提供：</p>
  <ul>
    <li>遠端 Git 倉庫 URL。使用 SSH 時必須提供 SSH 地址，例如 <code>git@github.com:username/private-repo.git</code>。支援 GitHub、GitLab、Bitbucket 和 Azure DevOps 等主流平臺。</li>
    <li>認證方案：
      <ul>
        <li>HTTPS：倉庫的<strong>使用者名稱</strong>和<strong>密碼</strong>或<strong>權杖</strong>。</li>
        <li>SSH：<strong>SSH 私密金鑰</strong>檔案和<strong>密碼短語</strong>。請參閱<a href="#使用-ssh-認證">使用 SSH 認證</a>。</li>
        <li>OAuth：點選<strong>取得存取權杖</strong>。</li>
      </ul>
    </li>
  </ul>
</>
) : (
<>
  <img src="/public/images/settings_git_local.png" alt="Git 版本控制配置窗格" width="400" />
  <p>選擇<strong>配置型別</strong>：</p>
  <ul>
    <li><strong>遠端</strong>：連線到託管 Git 倉庫。提供倉庫 URL 和認證方案。HTTPS 需要使用者名稱及密碼或權杖；SSH 需要私密金鑰及密碼短語；OAuth 可透過<strong>取得存取權杖</strong>完成。</li>
    <li><strong>本地</strong>：直接在 {siteNameShort} 伺服器上建立獨立 Git 倉庫，無需遠端 URL 或憑據。</li>
  </ul>
</>
)}

點選**儲存**後，{siteNameShort} 會執行初始化任務：在 `AppDirectory` 內建立 Git 倉庫，建立包含初始化前配置的 `settings-before-git-init-<initialization_date>` 分支，並暫存配置檔案。這可避免遠端倉庫已有衝突內容時丟失本地配置。

頁尾會變為顯示本地修改數、當前分支以及遠端提交數（僅遠端倉庫）的狀態列。遠端倉庫點選**提交併推送**完成初始提交；本地倉庫點選**提交**。

<img src="https://mintcdn.com/qiao/ilnLy7gsSdFqbKmI/public/images/version_control_footer_toolbar.png?fit=max&auto=format&n=ilnLy7gsSdFqbKmI&q=85&s=3bb76694d52f283ecb33cd14f02f16aa" alt="Git 版本控制頁尾工具列" width="800" data-path="public/images/version_control_footer_toolbar.png" />

## 使用 SSH 認證

* 執行 `ls -al ~/.ssh` 檢查現有 SSH 金鑰。
* 如需新金鑰，執行 `ssh-keygen -t ed25519 -C "your_email@example.com"`。
* 可為金鑰新增密碼短語。
* 在 **SSH 私密金鑰**欄位上傳私密金鑰。
* 將公開金鑰新增到 Git 平臺。

## 刪除 Git 配置

點選設定面板上的垃圾桶圖示，然後選擇**Git 倉庫選項**：

* **保留底層倉庫**：{siteNameShort} 斷開倉庫連線，但磁碟上的 `.git` 資料夾保持不變，仍可使用伺服器上的 Git 工具直接操作。
* **刪除底層倉庫**：刪除 `.git` 資料夾，完全停用該安裝的版本控制。所有暫存但未提交的更改都會永久丟失。

使用本地倉庫時，選擇保留底層倉庫可以儲存提交歷史，之後可重新連線或[移轉到遠端倉庫](../git-version-control#從本地倉庫移轉到遠端倉庫)。

刪除配置後，可隨時點選**配置**重新設定版本控制。
