原理图/PCB 已在 EasyEDA 里做到 12 页跨页 0 漏接,固件刚完成骨架包 A1。 这次是把已有的一切一次性纳入版本控制,没有改动任何设计内容。 纳入: - 设计与需求文档、PROGRESS.md、小米8 参考原理图 PDF 与追脚脚本 - .claude/ 下的 EasyEDA 桥接工具链与几何/网表缓存(eda-parts.json、 pcb-parts.json、pcb-pads.json、p2-ch1.json 等,是重画各页的唯一事实来源) - 117 张验证截图(本项目所有方向问题都是靠人眼看截图发现的,属于证据不是垃圾) - firmware/ 的 A1 骨架与 site/ 文档站源码 .gitignore 排除:构建产物(firmware/build、host/build、sdkconfig)、 site/node_modules、__pycache__、桥接日志 _bridge.log、脚本自标的 *.stale。 .gitattributes 默认 `* -text`:现有 .py/.json 大多是 CRLF,原样存, 不让 git 重写行尾。唯一例外是 *.sh 强制 LF —— 带 \r 的 shell 脚本 bash 跑不了。 Co-Authored-By: Claude Opus 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01QYuExfgyYa6DzRRcUso8M8
40 行
1.4 KiB
Bash
40 行
1.4 KiB
Bash
#!/usr/bin/env bash
|
||
# 重新构建并同步 PhoneRail 需求文档站到 home 服务器。
|
||
# 在 Git Bash 里从 site/ 目录跑: bash deploy/deploy.sh
|
||
#
|
||
# 只做「内容更新」这一件事。首次部署时另外做过的两步(已完成,不会重复):
|
||
# 1. scp deploy/nginx-phonerail-docs.conf -> /etc/nginx/conf.d/phonerail-docs.conf
|
||
# 2. 在门户应用表里加 key=phonerail / port=7757,再跑
|
||
# python3 /root/portal/deploy/gen-vhosts.py --write
|
||
# 只有改了 nginx 配置或应用注册信息时才需要重跑那两步。
|
||
|
||
set -euo pipefail
|
||
|
||
HOST="${DEPLOY_HOST:-10.5.5.13}"
|
||
REMOTE_DIR="/root/phonerail-docs"
|
||
|
||
cd "$(dirname "$0")/.."
|
||
|
||
echo "==> 构建(会先同步 ../需求文档.md 并校验锚点)"
|
||
npm run build
|
||
|
||
echo "==> 同步到 ${HOST}:${REMOTE_DIR}"
|
||
cd .vitepress/dist
|
||
tar -cf - . | ssh "$HOST" "
|
||
rm -rf ${REMOTE_DIR} &&
|
||
mkdir -p ${REMOTE_DIR} &&
|
||
tar -xf - -C ${REMOTE_DIR} &&
|
||
chmod 0711 /root &&
|
||
chmod -R o+rX ${REMOTE_DIR}
|
||
"
|
||
|
||
echo "==> 验证"
|
||
ssh "$HOST" "
|
||
curl -sS -o /dev/null -w ' loopback 7757 -> HTTP %{http_code}\n' http://127.0.0.1:7757/
|
||
curl -sS -o /dev/null -w ' 门户未登录(期望 302) -> HTTP %{http_code}\n' \
|
||
-H 'Host: phonerail.home.example' http://127.0.0.1:7755/
|
||
curl -sS http://127.0.0.1:7757/ | grep -o '<title>[^<]*</title>' | sed 's/^/ /'
|
||
"
|
||
|
||
echo "==> 完成:http://phonerail.home.example:7755/"
|