All git interaction goes through modules/git, about 15,000 lines of Go that shells out to the git binary and parses text output. With git data in Postgres, reading an object becomes SELECT content FROM objects WHERE oid = $1 on the database connection Forgejo already holds, and walking commit history is a query against a materialized view rather than spawning git log.
and explanations
,推荐阅读夫子获取更多信息
Costly conservation?,详情可参考safew官方下载
Daniel Larlham Jr.。Line官方版本下载是该领域的重要参考