From 1d00c36cd3355ca1911772b53ddf7fb7301c2b05 Mon Sep 17 00:00:00 2001 From: dekun Date: Fri, 12 Jun 2026 14:55:31 +0800 Subject: [PATCH] Add server-update.sh for force sync when CRLF causes git pull conflicts. Co-authored-by: Cursor --- .gitattributes | 1 + DEPLOY.md | 10 +++++++--- server-update.sh | 13 +++++++++++++ 3 files changed, 21 insertions(+), 3 deletions(-) create mode 100644 server-update.sh diff --git a/.gitattributes b/.gitattributes index f1f0b03..c3d876c 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,5 +1,6 @@ # 强制 Shell 脚本使用 LF,避免 Linux 上 $'\r': command not found *.sh text eol=lf +server-update.sh text eol=lf deploy.sh text eol=lf # 其他应在 Linux 服务器运行的文本文件 diff --git a/DEPLOY.md b/DEPLOY.md index 39bdeaa..64a33f7 100644 --- a/DEPLOY.md +++ b/DEPLOY.md @@ -48,12 +48,16 @@ > pm2 restart trading_studio > ``` -> **git pull 报本地修改冲突?** 执行: +> **git pull 报本地修改冲突?** 多半是 Windows CRLF 换行符幽灵改动(内容其实没变)。执行: > ```bash -> git stash push -m "backup" -- config.py llm_service.py -> git pull +> bash server-update.sh +> ``` +> 或手动: +> ```bash +> git fetch origin && git reset --hard origin/main > pm2 restart trading_studio > ``` +> 切勿 `git stash pop`,Ollama 地址请写在 `.env` 里。 ### 0.2 首次一键部署 diff --git a/server-update.sh b/server-update.sh new file mode 100644 index 0000000..443ae4e --- /dev/null +++ b/server-update.sh @@ -0,0 +1,13 @@ +#!/usr/bin/env bash +# 服务器快速更新(强制与远端同步,忽略 CRLF 等幽灵改动) +# 用法: bash server-update.sh +set -euo pipefail +cd "$(dirname "$0")" +echo "[INFO] 拉取远端..." +git fetch origin main +echo "[INFO] 强制同步到 origin/main(本地 config.py 等改动将被覆盖,请用 .env 配置 Ollama)" +git reset --hard origin/main +echo "[INFO] 重启 PM2..." +pm2 restart trading_studio +pm2 status +echo "[OK] 更新完成。Ollama 地址请编辑 .env(见 .env.example)"