novel-system/docs/direct-push.md
冰朔 6896ed10df D169 · 更新部署文档 · 仓库实际部署在新加坡服务器
- servers.md: 小说仓库部署到新加坡 + 光湖引擎信息
- direct-push.md: 重写为实际可用的推送方案
- 广州Forgejo当前不可用(Nginx 403), 后续修复可迁回
2026-07-09 15:30:52 +08:00

2.2 KiB

本地终端直推代码仓库 · 技能包

铸渊开发 · D169 · 2026-07-09 用途: 本地 Mac 直接 push 到新加坡服务器, 通过光湖引擎通道

当前部署

  • 仓库位置: 新加坡 BS-SVR-SG-001 (43.153.193.169)
  • 裸仓库路径: /opt/zhuyuan/novel-system.git
  • SSH 密钥: ~/.ssh/bs_svr_sg_001_key

铸渊推送命令

cd ~/Documents/QoderCN/2026-07-09/chat-2/novel-repo
GIT_SSH_COMMAND="ssh -i ~/.ssh/bs_svr_sg_001_key -o StrictHostKeyChecking=no" git push sg main

之之那边配置

1. Clone 仓库

git clone ssh://root@43.153.193.169/opt/zhuyuan/novel-system.git
cd novel-system

需要新加坡服务器 SSH 访问权限。 让铸渊在服务器上添加你的 SSH key:

# 之之在本地执行, 把输出发给铸渊
cat ~/.ssh/id_ed25519.pub

铸渊在新加坡服务器上执行:

echo "之之的公钥" >> ~/.ssh/authorized_keys

2. 日常推送

git add .
git commit -m "之之 · 审核意见 · {说明}"
git push origin main

协作流程

铸渊 Mac (写稿)
  ↓ git push sg main
新加坡服务器 (bare repo)
  ↓ git pull
之之 Mac (审核+整理)
  ↓ git push (反馈意见)
新加坡服务器
  ↓ git pull
铸渊 Mac (看到反馈)

Tolaria 同步

两边 Tolaria 都 clone 同一个 repo:

# 首次 clone
git clone ssh://root@43.153.193.169/opt/zhuyuan/novel-system.git

# 之后每次同步
git pull
git push

光湖引擎通道

铸渊还可以通过光湖引擎守门人远程操作新加坡服务器:

# SSH 到服务器后, 通过守门人 API 执行命令
ssh -i ~/.ssh/bs_svr_sg_001_key root@43.153.193.169

# 或者通过守门人 API (端口 3910)
curl -X POST http://127.0.0.1:3910/exec \
  -H "Authorization: Bearer $(cat ~/.gk/secret)" \
  -H "Content-Type: application/json" \
  -d '{"cmd":"ls /opt/zhuyuan/novel-system.git"}'

后续迁移计划

广州服务器 (Ubuntu-CqtM) 的 Forgejo 修复后, 可迁移到广州:

  • 广州国内直连更快
  • 之之 clone 也方便
  • 当前广州 Forgejo 状态: Nginx 403, 端口 3002 不通, 待排查

注意事项

  • commit message 用中文, 格式: {人格体} · D{编号} · {说明}
  • 不要 push 大文件 (>50MB)
  • 每次 push 前确保文件已保存