Files
forge/README.zh-cn.md
zeekayandHanzo Dev 27cde39e36 Name every remaining identifier, path and default for this product
Storage buckets, indexer names, the bleve analyzer, the lock prefix, SSH host
keys, the markdown front-matter key, the container data paths, the RPM repo id
and the API security scheme all read as this product now, and app.example.ini
matches the code again. The upstream maintainer list and the changelog
generator config went with the release history they belonged to, and the
citation comments state the fact rather than link the issue.

Three inert rules turn out to have been inert because they named a module path
this tree does not use: gci grouped no first-party imports under prefix(), and
depguard let models/migrations import models and modules/structs. They now name
github.com/hanzoai/git. The config example also documented .gitea/workflows
while the code has read .hanzo/workflows for some time.

The authorized_keys marker follows the delegate-hook precedent: the new name is
written and the old one is still recognised, because a marker we do not know is
copied through as a hand-added key and leaves a revoked key authorized. The
stored user_setting key keeps its value; only a migration may change that.

Co-authored-by: Hanzo Dev <[email protected]>
2026-09-10 19:14:35 -07:00

1.1 KiB
Raw Permalink Blame History

Hanzo Forge

License: MIT

Hanzo 自托管的 Git 平台 — Git 托管、代码审查、问题跟踪、包仓库,以及兼容于 GitHub Actions 的 CI/CD,并通过 hanzo.id OIDC 原生集成 IAM。服务位于 git.hanzo.ai。

本项目采用 MIT 许可。上游版权与授权记录于 NOTICE 与 LICENSE;身份验证改接 Hanzo IAM 而非本地账号。

构建与部署

如同每个 Hanzo 仓库,只有一种方式:根目录的 hanzo.yml 声明镜像与测试; 约七行的 .hanzo/workflows/cicd.yml 导入 hanzoai/ci,在我们自己的 runner 上构建并推送 ghcr.io/hanzoai/git。切勿在本地构建镜像。

运行中的服务定义于 hanzoai/universe(git operator App CR):单写入者 SQLite 部署,配置经由 GIT__<section>__<KEY> 环境变量契约注入,OIDC 登录对接 hanzo.id。

开发

本地环境请见 docs/development.md。构建完成后,运行 ./gitd web 启动服务器,或 ./gitd help 查看所有命令。