每个项目对应一个代码仓库。该仓库的设置决定了Coroid与您的分支模型的交互方式。
可在项目设置中找到相关配置项。
同步模式或仅本地模式
代码库模式决定了 Coroid 是否可以向 GitHub 或 GitLab 写入数据。
- 同步模式(默认模式):Coroid 会推送每个任务的分支,并针对您的基础分支发起拉取请求。
- 仅本地模式:Coroid 会从代码库克隆并拉取数据,但绝不会向代码库写入任何内容。不会推送数据、创建远程分支、发起拉取请求、添加评论、进行审核、运行检查或触发 Webhook,也不会合并代码或执行流水线任务。所有分支、提交、审核、QA 和预览操作均在 Coroid 内部完成。
已同步
- 从 GitHub 拉取数据
- 推送分支并创建拉取请求
仅本地
- 从 GitHub 拉取数据
- 不会推送、评论或创建拉取请求
- 您可从 Coroid 自身的 Git 中获取其分支。
创建项目时即可选择该模式,也可在项目设置中更改。仅本地模式的项目会在代码库名称旁显示仅本地模式。
仅本地模式是在真实代码库上试用 Coroid 的安全方式。任务和计划可完整运行至审核阶段。原本应生成 pull request 的位置会显示保存在 Coroid 中以及一个操作:开始同步。批准操作需要同步模式的项目,因为批准意味着将代码合并到您的基础分支;在计划内部,各任务仍会在 Coroid 的计划分支中协同工作。Coroid 中的基础分支副本与远程分支保持一致,因此未经您发起 pull request 的操作,任何内容都无法进入该分支。
若要在本地查看相关工作内容,可打开克隆并导出,在代码库设置中创建访问令牌,然后从 Coroid 自身的 Git 中获取其分支:
git remote add coroid https://coroid@git.coroid.ai/git/<project-id>.git
git fetch coroid开始同步会将项目切换为同步模式。此后新产生的工作会被推送并生成拉取请求。已保存在 Coroid 中的工作仍保留在原位:可从审核页面打开对应的 pull request (为任务创建 pull request,为计划打开 pull request)。切换回仅本地模式会立即生效。
仅本地模式下,任何操作均不依赖令牌的权限范围:无论连接具备何种写入能力,Coroid 都会拒绝向代码库写入数据。该模式会随着项目的分支设置一同迁移至设置可移植性。
基础分支
Coroid从您指定的基础分支切入,生成的拉取请求也会合并回该分支。默认情况下,它采用代码仓库的默认分支。
如果您需要合并到其他分支,可修改此项——比如develop分支、发布版本分支或长期存在的集成分支。此类配置错误是最常见的设置失误,会导致拉取请求指向无人审核的分支。
当目标分支发生变化时
计划会记录其起始的基准分支提交版本。若该基准分支在计划的pull request合并前发生变更,Coroid会暂停合并操作;详情见当基准分支更新时。此设置决定了后续的处理方式:
- 暂停以待审核(默认选项)——相关人员会查看新提交的代码,要么接受这些更改,要么要求Coroid合并并重新验证。
- 合并并重新验证——Coroid会将更改合并到计划的通道分支中,无需等待人工干预,便会再次启动开发人员、QA及审核流程。此操作会消耗代理资源。若合并或重新验证失败,最终决策权仍归人工掌握。
无论哪种情况,在计划内容通过当前基准分支校验或人工确认差异前,都不会执行合并操作。该设置属于项目的分支设置范畴,会随着项目一同迁移至设置可移植性。
工作分支
每个任务都在独立的分支上运行。每个任务会对应创建一个分支,工作完成后即推送至远程仓库(本地模式的项目会将分支存储在 Coroid 中),因此同时运行的多个任务不会共享同一分支,也无法看到彼此的进行中的工作。
任何内容都不会直接提交到您的基础分支。这并非可配置的选项,而是Coroid的运行机制决定的。
每个任务对应一个分支。两个任务绝不会共享同一分支。
您要求的审核和状态检查规则保持不变。
由您合并 main
分支保护
您现有的分支保护规则仍会生效。Coroid会发起常规的拉取请求,因此强制审核、状态检查要求以及合并权限限制等规则,与团队使用的规则完全一致。
如果保护规则要求提交签名或特定的状态检查,而Coroid无法满足这些要求,pull request就会打开相应提示,导致拉取请求无法合并——这是规则在起作用,并非Coroid的功能故障。
清理
任务完成后,对应的分支可在pull request合并或关闭后清理。如果您依赖分支名称进行审计或发布流程管理,启用此功能前请先确认相关需求。
更改连接
如果底层代码仓库的连接发生变化——比如令牌轮换、应用重新安装或仓库重命名——项目会保留原有身份和历史记录。只需将其重新指向新的连接,无需创建新项目,从而避免丢失上下文、设置和过往工作成果。
版本发布流水线设置
基础分支决定了Coroid生成拉取请求的位置。部署操作会用到独立的项目。版本发布配置内容涵盖运行环境、就绪策略,还可指定GitHub Actions或GitLab流水线引用及部署任务。在Coroid发起运行请求前,该引用必须指向版本发布的固定提交。需配置作用于特定环境的回调凭证,以便流水线能反馈执行结果;仅靠代码库连接无法证明已部署的内容。外部流水线无需启用Coroid的调度功能即可上报相关事件。