GitHubRepoForker
此组件通过 GitHub API,从 issue URL 为 GitHub 仓库创建 fork。
| pipeline 中的最常见位置 | 在管道的开头,并且在期望 GitHub 分支名称作为输入的 Agent 组件之前 |
| 必需的初始化变量 | "github_token": GitHub 个人访问令牌。可以设置为GITHUB_TOKEN 环境变量。 |
| 强制运行变量 | "url": 要 fork 的仓库中的 GitHub issue 的 URL |
| 输出变量 | "repo": Fork 仓库路径 "issue_branch": issue 特定的分支名称 (如果已创建) |
| API 参考 | GitHub |
| GitHub 链接 | https://github.com/deepset-ai/haystack-core-integrations/tree/main/integrations/github |
概述
GitHubRepoForker 接收一个 GitHub issue URL,提取仓库信息,创建或同步该仓库的 fork,并可选地创建一个 issue 特定的分支。这对于需要创建 pull request 或使用仓库 fork 的自动化工作流特别有用。
主要功能
- 自动同步: 自动将现有 fork 与上游仓库同步
- 分支创建: 创建 issue 特定的分支 (例如,issue #123 的 "fix-123")
- 等待完成: 可选地等待 fork 创建完成
- Fork 管理: 智能处理现有的 fork
授权
此组件需要使用个人访问令牌进行 GitHub 身份验证。您可以通过GITHUB_TOKEN 环境变量进行设置,或者在初始化时通过github_token 参数直接传递。
要创建个人访问令牌,请访问 GitHub 的令牌设置页面。请确保授予适当的权限以进行仓库 fork 和管理。
安装
使用 pip 安装 GitHub 集成
pip install github-haystack
用法
仓库占位符
要运行以下代码片段,您需要将
owner/repo替换为您自己的 GitHub 仓库名称。
单独使用
from haystack_integrations.components.connectors.github import GitHubRepoForker
forker = GitHubRepoForker()
result = forker.run(url="https://github.com/owner/repo/issues/123")
print(result)
{'repo': 'owner/repo', 'issue_branch': 'fix-123'}
更新于 4 个月前
