SSH Key
适合开发机和固定工作环境。每台设备使用独立密钥,便于吊销和审计。
先把身份、凭证、分支和提交规则配置好,再让 Agent 修改代码。
不要一次开放所有能力。先选择最小可用入口,验证价值后再升级。
适合开发机和固定工作环境。每台设备使用独立密钥,便于吊销和审计。
适合企业 SSO 或代理环境。使用系统凭证管理器,不在远程 URL 中保存 Token。
对发布仓库或高合规项目,使用 SSH、GPG 或平台支持的签名方式验证提交来源。
把身份、权限、工具边界和验收一起配置,而不是只追求“接口能通”。
设置 user.name 与 user.email;企业仓库使用公司邮箱,避免多个身份混在一起。
为当前设备生成 SSH Key,或启用系统 Credential Manager;不要复用同事密钥。
把公钥添加到 GitHub、GitLab 或企业 Git 服务,并记录密钥用途与到期策略。
统一默认分支名、pull.rebase、自动换行和提交签名策略,减少 Agent 产生环境差异。
默认允许 status、diff、branch、add 和 commit;push、force push、tag 与 reset 单独确认。
克隆、建分支、修改、提交、拉取和推送一次,确认作者、签名和远端分支都正确。
字段和值都是示例占位符,请按你使用的 Agent、平台和密钥管理方式调整。
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。它可能把凭证明文写入磁盘;优先使用系统钥匙串或官方凭证管理器。
把读取、草稿和高影响动作分开,避免一个 Token 同时拥有全部能力。
| 动作 | 默认等级 | 建议边界 |
|---|---|---|
| status / diff / log | Agent 可以自由读取本地 Git 状态和历史。 | |
| branch / add / commit | 允许在任务分支提交,但提交前展示 Diff。 | |
| push / tag | 确认目标远端、分支、提交范围和是否触发 CI。 | |
| force push / reset --hard | 默认禁止;确需执行时必须有备份与明确批准。 |
不要只测成功路径;撤销权限、重复执行和失败回退同样重要。
在测试仓库创建 agent/connect-git 分支,修改 README 并提交;不要 push,先展示提交信息与 Diff。
本地规则无法替代服务端保护。main/master 应在 GitHub 或 GitLab 上启用受保护分支、评审和 CI 检查,避免凭证误用直接改写历史。
平台界面和权限名称会更新,实际接入时以官方文档和企业管理员策略为准。