本技能提供GitHub操作的完整解决方案,包括仓库管理、分支管理、PR和Issue管理、安全最佳实践、开源项目规范和IM通道集成。
pip install PyGithub python-dotenv requests
创建.env文件:
# GitHub API Token
GITHUB_TOKEN=你的GitHub令牌
# 飞书配置
FEISHU_WEBHOOK_URL=https://open.feishu.cn/open-apis/bot/v2/hook/your-webhook-id
# 企业微信配置
WECOM_CORP_ID=你的企业ID
WECOM_APP_SECRET=你的应用密钥
WECOM_AGENT_ID=你的应用ID
# 微信个人号配置
WEIXIN_BOT_TOKEN=你的iLink Bot Token
WEIXIN_API_URL=https://api.ilink.qq.com
# Slack配置
SLACK_API_TOKEN=你的Slack API Token
# 列出所有仓库
python main.py repo list
# 创建新仓库
python main.py repo create --name my-repo --description "我的新仓库"
# 获取仓库详情
python main.py repo get --name my-repo
# 删除仓库
python main.py repo delete --name my-repo
# 创建新分支
python main.py branch create --repo my-repo --name feature-branch
# 列出分支
python main.py branch list --repo my-repo
# 创建PR
python main.py pr create --repo my-repo --title "添加新功能" --body "这是一个新功能" --head feature-branch --base main
# 列出PR
python main.py pr list --repo my-repo
# 创建Issue
python main.py issue create --repo my-repo --title "Bug报告" --body "有东西坏了"
# 列出Issue
python main.py issue list --repo my-repo
class FeishuIntegration:
def __init__(self):
self.feishu_webhook_url = os.getenv('FEISHU_WEBHOOK_URL')
def send_message(self, message):
if self.feishu_webhook_url:
payload = {
"msg_type": "text",
"content": {
"text": message
}
}
response = requests.post(self.feishu_webhook_url, json=payload)
return response.json()
return {"error": "FEISHU_WEBHOOK_URL not set"}
class WeChatIntegration:
def __init__(self):
# 企业微信配置
self.wecom_corp_id = os.getenv('WECOM_CORP_ID')
self.wecom_app_secret = os.getenv('WECOM_APP_SECRET')
self.wecom_agent_id = os.getenv('WECOM_AGENT_ID')
# 微信个人号配置(使用iLink Bot)
self.weixin_bot_token = os.getenv('WEIXIN_BOT_TOKEN')
self.weixin_api_url = os.getenv('WEIXIN_API_URL', 'https://api.ilink.qq.com')
# 项目名称
项目描述
## 功能特性
- 功能1
- 功能2
- 功能3
## 安装说明
1. 克隆仓库
2. 安装依赖
3. 配置环境变量
## 使用方法
### 命令示例
## 贡献指南
详见[CONTRIBUTING.md](CONTRIBUTING.md)文件。
## 许可证
本项目采用MIT许可证 - 详见[LICENSE](LICENSE)文件。
# 环境变量文件
.env
# 依赖目录
__pycache__/
*.py[cod]
# 编辑器文件
.vscode/
.idea/
*.swp
*.swo
*~
# 系统文件
.DS_Store
Thumbs.db
解决方案:在GitHub个人访问令牌设置中,确保选择了适当的权限范围,如repo权限。
解决方案:检查网络连接,确保能访问GitHub API。
解决方案:使用.gitignore文件排除敏感文件,使用环境变量存储敏感信息。
解决方案:检查命令参数是否正确,确保仓库名称存在,分支名称有效。
本技能提供了GitHub操作的完整解决方案,涵盖了仓库管理、分支管理、PR和Issue管理、安全最佳实践、开源项目规范和IM通道集成。通过使用本技能,用户可以安全、高效地管理GitHub仓库,创建标准化的开源项目,并通过各种IM通道进行控制。
共 1 个版本