REAL WORKSPACE · CONNECTION 05

连接 Git

先把身份、凭证、分支和提交规则配置好,再让 Agent 修改代码。

SSH KeyCredential Helper分支保护提交签名
01

先选一条正确的连接路线

不要一次开放所有能力。先选择最小可用入口,验证价值后再升级。

兼容

HTTPS + 凭证管理器

适合企业 SSO 或代理环境。使用系统凭证管理器,不在远程 URL 中保存 Token。

增强

提交 / 标签签名

对发布仓库或高合规项目,使用 SSH、GPG 或平台支持的签名方式验证提交来源。

02

按这六步完成第一次接入

把身份、权限、工具边界和验收一起配置,而不是只追求“接口能通”。

  1. 01
    确认 Git 身份

    设置 user.name 与 user.email;企业仓库使用公司邮箱,避免多个身份混在一起。

  2. 02
    创建独立凭证

    为当前设备生成 SSH Key,或启用系统 Credential Manager;不要复用同事密钥。

  3. 03
    绑定代码平台

    把公钥添加到 GitHub、GitLab 或企业 Git 服务,并记录密钥用途与到期策略。

  4. 04
    设置默认策略

    统一默认分支名、pull.rebase、自动换行和提交签名策略,减少 Agent 产生环境差异。

  5. 05
    限制 Agent 动作

    默认允许 status、diff、branch、add 和 commit;push、force push、tag 与 reset 单独确认。

  6. 06
    在测试仓库验收

    克隆、建分支、修改、提交、拉取和推送一次,确认作者、签名和远端分支都正确。

03

配置示例

字段和值都是示例占位符,请按你使用的 Agent、平台和密钥管理方式调整。

terminal · 基础配置示例 · 不含真实密钥
git config --global user.name "Your Name"
git config --global user.email "you@company.com"
git config --global init.defaultBranch main
git config --global pull.rebase false

ssh-keygen -t ed25519 -C "you@company.com"
ssh -T git@gitlab.com

不要在自动化脚本里写 git config credential.helper store。它可能把凭证明文写入磁盘;优先使用系统钥匙串或官方凭证管理器。

04

最小权限建议

把读取、草稿和高影响动作分开,避免一个 Token 同时拥有全部能力。

动作默认等级建议边界
status / diff / log 只读 Agent 可以自由读取本地 Git 状态和历史。
branch / add / commit 草稿 允许在任务分支提交,但提交前展示 Diff。
push / tag 确认 确认目标远端、分支、提交范围和是否触发 CI。
force push / reset --hard 确认 默认禁止;确需执行时必须有备份与明确批准。
05

上线前验收

不要只测成功路径;撤销权限、重复执行和失败回退同样重要。

  • git config 中的姓名与邮箱属于当前用户。
  • SSH Key 或 HTTPS Token 可以单独吊销。
  • Agent 不会向 main/master 直接提交或推送。
  • 提交前后都能显示 Diff、分支名和目标远端。
FIRST SAFE PROMPT 在测试仓库创建 agent/connect-git 分支,修改 README 并提交;不要 push,先展示提交信息与 Diff。
!
先保护主分支,再开放写能力

本地规则无法替代服务端保护。main/master 应在 GitHub 或 GitLab 上启用受保护分支、评审和 CI 检查,避免凭证误用直接改写历史。

06

继续查看官方文档

平台界面和权限名称会更新,实际接入时以官方文档和企业管理员策略为准。