@loserfox/git-identity

@LoserFox · Git
检测未发现问题无安装脚本

让 DSH 内所有 git 提交都固定使用环境自身的作者身份,防止会话中身份被误改

v0.1.0版本
GitHub 源码安装安装方式
2026-08-13最近更新
7Star
dsh plugin --profile web add github:LoserFox/dsh-git-identity查看仓库

插件介绍

根据仓库资料整理 · commit 39c608c

主要功能

  • 在插件加载时解析当前环境的 git 作者身份,并写入 GIT_AUTHOR_*/GIT_COMMITTER_* 环境变量
  • 利用 git 环境变量优先级高于 git config 的特性,覆盖会话中任何显式指定的错误作者身份
  • 身份解析优先级:插件显式配置 > gh CLI 登录账号 > 启动环境 GIT_AUTHOR_* > git config --global 兜底
  • 使用 gh CLI 登录账号时,自动生成 GitHub noreply 邮箱格式的作者邮箱
  • 幂等地将解析到的身份同步回 git config --global,使插件进程外的普通终端提交也保持一致
  • 所有身份来源均解析不到时仅告警不注入,不会凭空编造作者身份

适合什么时候用

  • 多个 agent 会话或 bash 工具反复执行 git commit,担心某次会话意外改错作者身份导致后续提交跟着出错
  • 希望 DSH 环境内的提交自动匹配 gh CLI 已登录账号,无需每次手动配置 git user.name/email
  • 在 web/headless 等多 profile 部署场景下,需要统一且可预测的提交作者身份策略

使用前需要

  • 需要 DSH 0812 及以上版本支持的官方 profile bundle 插件系统
  • 需通过 dsh plugin --profile <name> add 安装到目标 profile(如 web、headless),并重启该 profile 进程使其生效(组合层变更不支持热更新)
  • 可选依赖 gh CLI(已登录)用于自动解析作者身份,未安装或未登录时会回退到其他身份来源

在 GitHub 阅读完整 README

权限与能力

安装后它能碰到什么
不覆盖任何 dsh-base 宿主行:不接管沙箱、审批、凭据等能力。
宿主能力
环境变量宿主子进程
能力是范围不是结论:很多能力是功能所需。

基本信息

仓库LoserFox/dsh-git-identity安装方式GitHub 源码安装(需 allowBuilds)安装提示源码安装会在你的机器上执行 prepare 构建,需要 allowBuilds 授权;建议用 github:LoserFox/dsh-git-identity#39c608c 锁定本次检测的 commit。收录日期2026-08-13固定 commit39c608ca8e07 · 2026-08-13
dsh plugin --profile web add github:LoserFox/dsh-git-identity