[ClaudeCode]-2-使用ClaudeCode实现Github仓库管理

引言

这篇文章介绍ClaudeCode使用gh命令,实现github仓库的自动推送,Issue的自动修复,包含从安装到推送项目到 GitHub 的完整、可直接执行的命令流程,核心是用 gh 命令替代手动操作,快速把 xxx 项目推送到 GitHub。

文章目录

0×1.安装gh完成登陆验证

					
					# 1. 安装 gh CLI(Windows 用 winget,mac/Linux 看备注)
					winget install --id GitHub.cli

					# 2. 验证安装(重启终端后执行)
					gh --version

					# 3. 登录 GitHub(授权获取 token,按终端提示操作)
					gh auth login
					# 👉 交互步骤提示:
					# - 选择:GitHub.com
					# - 选择:HTTPS
					# - 选择:Login with a web browser(浏览器登录授权)
					# - 复制终端里的验证码,打开 https://github.com/login/device 粘贴验证,完成授权

					##备注
					# macOS(brew)
					brew install gh
					# Linux(Debian/Ubuntu)
					sudo apt install gh
					# ArchLinux
					sudo pacman -S github-cli 
					
					

注释:

gh授权之后,会在本地生成hosts文件,不同系统路径不同,比如 Linux/macOS 是 ~/.config/gh/hosts.yml,Windows 是 %APPDATA%\gh\hosts.yml

授权文件中包含简单的授权信息,在Linux中授权Token不会保存在这个文件中,可以通过下面的命令查看Token的部分信息:

					
					#查看gh授权账号token
					gh auth status

					#如果想取消授权,可以通过下面的命令
					# 注销当前认证(会同时删除密钥环里的 token)
					gh auth logout
					
					

0×2.推送本地项目到Github

gh推送项目手动流程:

							
					# 1. 进入你的 xxx 项目根目录(替换为实际路径)
					cd "C:/你的项目路径/xxx项目"

					# 2. 初始化 git 仓库(首次推送必做)
					git init

					# 3. 让 Claude 生成适配的 .gitignore 文件(直接执行,Claude 会自动生成对应语言的忽略规则)
					# 👉 执行后 Claude 会创建文件,你也可以手动指定语言,比如:gh repo create --gitignore Python
					gh repo create --gitignore auto  # auto 自动识别项目语言生成.gitignore

					# 4. (可选)如果上面自动生成失败,手动创建通用 .gitignore(比如 Python 项目)
					echo "# Python 忽略规则
					__pycache__/
					*.py[cod]
					*.so
					.Python
					env/
					venv/
					*.env
					*.log" > .gitignore

					# 5. 添加所有文件到暂存区
					git add .

					# 6. 提交文件(备注自定义)
					git commit -m "初始化 xxx 项目,首次提交"

					# 7. 创建远程 GitHub 仓库并关联推送(关键一步)
					# 替换:xxx项目名 为你的仓库名,--public 改为 --private 则创建私有仓库
					gh repo create xxx项目名 --public --source=. --remote=origin --push
					
					

ClaudeCode自动化创建项目并推送:

					
					直接打开claude, 然后这样和它说:
					1.在当前项目中,用rust创建一个简单的helloworld程序
					2.帮我将hello_rust项目使用gh命令推送到github

					#搞定
					
					

0×3.创建和自动修复Issue

首先我让claude故意创建一个有bug的版本,并且推送上去

					
					### 第一步:在claude里面描述
					帮我在当前目录下故意搞一个有bug的helloworld项目版本并推送上去,然后创建一个issue

					#创建一个自定义的命令,用于读取issue修复bug

					### 第二步:完整使用流程(确保 Claude 能执行)
					#### 1. 创建目录和文件
					```bash
					# 1. 进入项目根目录
					cd /你的项目路径

					# 2. 创建 .claude/commands 目录(不存在则创建)
					mkdir -p .claude/commands

					# 3. 创建并写入命令文件
					vim .claude/commands/fix-github-issue.md
					#写入下面的这些步骤
					请分析并修复GitHub问题:$ARGUMENTS

					按照这些步骤:

					1.使用 `gh issue view` 获取问题详情
					2.理解问题中的描述
					3.搜索代码库中的相关文件
					4.实施必要的更改来修复问题
					5.编写并运行测试来验证修复
					6.确保代码通过代码检查和类型检查
					7.测试和修复完成后删除测试过程中用于检查和测试生成的程序
					8.创建描述性的提交信息
					9.推送并创建PR
					10.如果问题已经修复请关闭对应issue,并在issue下回复已修复

					记住,对所有GitHub相关任务,请使用GitHub CLI (`gh`)

					# 4.重启claude

					# 5.用下面的自定义命令,指定issue号,进行代码修复
					/fix-github-issue 1