You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu服务器上React/Next.js应用git更新操作相关问题咨询

部署操作问题解答

1. git pull 前是否需要停止 PM2 相关进程

如果你可以接受停机,建议优先停止所有PM2运行的项目相关进程。
这么做可以完全规避两类风险:一是运行中的进程占用项目文件,导致git拉取时出现文件锁、权限类报错;二是拉取过程中新旧代码文件混杂,导致运行中的服务出现不可预期的异常。由于你无需考虑 downtime,停止进程操作没有额外成本,是最稳妥的选择。

2. 拉取完成后是否需要重新运行 npm build

必须执行,除非你将本地构建后的产物也一同推送到了GitHub(这是非常不推荐的实践)。
常规的代码托管流程中,git仓库仅存储项目源码,你本地修改的业务代码、依赖配置等内容,都需要在服务器端重新编译构建,生成适配服务器环境的生产运行产物后,新的代码改动才会生效。

适配停机场景的完整操作流程

  • 先查看当前运行的PM2进程,确认你的项目进程名:pm2 ls
  • 停止对应项目进程:pm2 stop <你的进程名>
  • 进入项目根目录,拉取最新代码:git pull
  • 安装新增依赖(避免新代码引入的依赖未安装导致构建/运行报错):npm install
  • 执行生产环境构建:npm run build
  • 重启PM2进程:pm2 start <你的进程名>
  • 可选,验证服务运行状态:pm2 logs <你的进程名>

内容的提问来源于stack exchange,提问作者Danny_P

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 09:24:00