D118 step-2 · 光湖原生数据库 · Git核心初始化 HLDP模块

This commit is contained in:
bingshuo 2026-05-31 13:35:20 +08:00
parent 2ce4f259da
commit 613060eba1

View File

@ -0,0 +1,56 @@
/**
*
* HLDP-ZY://native-repo/module/step-2
* 光湖原生数据库 · 第2步 · Git核心初始化
*
*
* @chain: D118 · 2026-05-31
* @module: git-core-init
* @step: 第2步 / 共8步
* @deploy: BS-SG-002 · 新加坡面孔
* @sovereign: TCS-0002 · 冰朔
* @guardian: ICE-GL-ZY001 · 铸渊
*
* @trigger:
* 光湖需要自己的原生数据库不用 Gitea/Forgejo
* 依赖文件: isomorphic-git 已在 BS-SG-002 上安装
*
* @intent:
* bare git 仓库初始化参考 isomorphic-git git.init()
* bare=true 无工作目录 .git 结构
* defaultBranch='main'
* 路径: /data/guanghulab/native-repo/.git
*
* @lock:
* 仓库路径: /data/guanghulab/native-repo
* 初始化成功: HEAD refs/heads/main
* objects/info/refs/hooks 已经创建
* 下一步需要第一个 HLDP commit 才能激活仓库
*
* @why:
* bare 仓库不需要工作目录铸渊不需要 checkout
* 只需要 Blob/Tree/Commit 三种 Git 对象
* isomorphic-git 提供纯 JS 接口不需要 CLI
*
*
*/
const git = require('isomorphic-git');
const fs = require('fs');
const path = require('path');
const NATIVE_DIR = path.join('/data/guanghulab/native-repo');
const GIT_DIR = path.join(NATIVE_DIR, '.git');
async function initNativeRepo() {
await git.init({
fs,
dir: GIT_DIR,
bare: true,
defaultBranch: 'main',
});
console.log('HLDP-DB-INIT:OK');
return { dir: GIT_DIR, branch: 'main', status: 'bare' };
}
module.exports = { initNativeRepo, NATIVE_DIR, GIT_DIR };