如何隐藏你使用 AI 编程助手的事实

AI摘要
本文是一篇技术教程,属于【知识分享】。文章针对使用AI编程助手(如Claude Code、Trae)时,其配置文件(如.claude/、CLAUDE.md)和提交签名(Co-Authored-By)会暴露在GitHub项目中的问题,提供了两种解决方案:一是通过配置全局Gitignore文件(~/.gitignore_global)来隐藏本地配置文件;二是通过修改AI工具的设置文件来去除提交记录中的AI签名,从而实现让代码本身“说话”的目的。

💡 提示:本文档包含两部分内容:

  1. 隐藏 AI 工具配置目录:通过全局 Gitignore 隐藏 .claude/CLAUDE.md 等配置文件
  2. 去除提交记录中的 AI 签名:通过 Claude Code 配置去除 Co-Authored-By 签名

问题:GitHub 上的”显眼包”

用 Claude Code、Trae 这类 AI 编程助手写代码确实爽,但有个小尴尬:

项目推送到 GitHub,.gitignore 里写着 .claude/CLAUDE.mdtrae/… 懂的都懂,这不就等于在脑门上贴个标签”此人使用 AI 写代码”吗?

当然用 AI 不丢人,只是有时候你更想让代码本身说话。

问题的本质

先来理解一下 Git 的忽略机制。Git 提供了三种忽略文件的方案:

方案 文件位置 是否会被提交 作用范围
项目 .gitignore 项目根目录 ✅ 是 仅当前项目
.git/info/exclude .git/ 目录 ❌ 否 仅当前项目
全局 ~/.gitignore_global 用户目录 ❌ 否 所有项目

项目级别的 .gitignore 是随着代码一起提交到 GitHub 的,任何人都能看到。而我们真正需要的,是让这些 AI 工具的配置文件只存在于本地,不出现在版本控制中。

我的解决方案:全局 Gitignore

经过研究,我发现最优雅的解决方案是使用全局 Gitignore

步骤一:创建全局忽略文件

首先,在用户目录下创建一个名为 .gitignore_global 的文件:

# Windows (PowerShell)
notepad C:\Users\你的用户名\.gitignore_global

# 或者使用 Git Bash
touch ~/.gitignore_global

在文件中添加你想要忽略的内容:

# Claude Code 配置
.claude/
CLAUDE.md

# Trae AI 助手配置
.trae/

# 其他 AI 工具...

步骤二:配置 Git 使用全局文件

告诉 Git 使用这个全局忽略文件:

git config --global core.excludesFile ~/.gitignore_global

就这么简单!现在这些配置在所有 Git 项目中都会自动被忽略。

步骤三:清理现有项目

对于已有的项目,你需要从 .gitignore 中移除这些条目:

# 编辑项目的 .gitignore,删除以下行
.claude/
CLAUDE.md
.trae/

然后提交这个更改:

git add .gitignore
git commit -m "chore: 清理配置文件"
git push

效果验证

配置完成后,可以通过以下命令验证忽略规则是否生效:

git check-ignore -v .claude CLAUDE.md .trae

输出应该显示这些文件/目录被全局忽略文件所匹配:

C:/Users/你的用户名/.gitignore_global:2:.claude/      .claude
C:/Users/你的用户名/.gitignore_global:3:CLAUDE.md     CLAUDE.md
C:/Users/你的用户名/.gitignore_global:6:.trae/        .trae

使用 git status 检查项目状态,你会惊喜地发现这些 AI 工具的配置目录不再显示为未跟踪文件。

另一种选择:.git/info/exclude

如果你不想使用全局配置,也可以使用项目本地的 exclude 文件:

# 在项目根目录执行
echo -e ".claude/\nCLAUDE.md\n.trae/" >> .git/info/exclude

这个文件位于 .git/info/exclude,它不会被提交到远程仓库,只存在于你的本地 Git 目录中。

但缺点是:你需要在每个项目中重复这个操作。

我的选择

我选择了全局 Gitignore 方案,原因很简单:

  1. 一次配置,所有项目生效
  2. 完全隐藏,GitHub 上看不到任何痕迹
  3. 便于管理,所有 AI 工具配置集中在一处

总结

使用 AI 编程助手已经成为现代开发的常态,但如果不想在 GitHub 上暴露这个事实:

  1. 隐藏配置文件:使用全局 Gitignore 方案
  2. 去除提交签名:配置 Claude Code 的 includeCoAuthoredBy 选项

关键是记住:项目级别的 .gitignore 会随代码一起提交,而全局忽略文件只存在于你的本地机器上


进阶技巧:去除提交记录中的 AI 签名

默认情况下,Claude Code 会在提交时添加 Co-Authored-By 签名,这会在 GitHub 提交记录中显示 AI 参与了代码编写。

通过配置去除签名

你可以在配置文件中设置 "includeCoAuthoredBy": false 来禁用此行为:

用户级配置(所有项目生效):

// ~/.claude/settings.json
{
  "includeCoAuthoredBy": false
}

项目级配置(仅当前项目生效):

// 项目目录下的 settings.local.json
{
  "includeCoAuthoredBy": false
}

配置生效位置

配置位置 文件路径 作用范围
用户级 ~/.claude/settings.json 所有项目
项目级 .claude/settings.local.json 或项目根目录 settings.local.json 当前项目

效果对比

未配置前(提交记录显示 AI 签名):

feat: 添加新功能

Co-Authored-By: Claude <noreply@anthropic.com>

配置后(提交记录无 AI 签名):

feat: 添加新功能

配置后,所有通过 Claude Code 创建的提交都不会再包含 Co-Authored-By 签名,GitHub 上看到的提交者就是你本人。


今天的分享就到这里。如果你有其他有趣的配置技巧,欢迎在评论区交流!


本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 1

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!