2.7 KiB
2.7 KiB
🔍 检测现有版本功能
问题场景
如果你的服务器上已经有部署的版本(在 /var/www/app/),但版本管理系统中没有记录,可以使用「检测当前版本」功能。
🚀 使用步骤
1. 启动部署工具
cd AdminTool
python deploy_tool.py
2. 配置服务器信息
在「服务器配置」区域填写:
- 服务器地址
- SSH 端口
- 用户名
- 密码
点击「保存配置」
3. 点击「🔍 检测当前版本」
位置:「版本历史管理」区域的操作按钮
4. 确认操作
系统会:
- ✅ 扫描
/var/www/app/目录 - ✅ 计算文件大小
- ✅ 获取最后修改时间
- ✅ 创建版本记录(格式:
existing_YYYYMMDD_HHMMSS) - ✅ 备份到
/var/www/app_versions/ - ✅ 保存到版本管理系统
5. 查看结果
检测完成后:
- 版本历史列表会显示检测到的版本
- 该版本会被标记为 ✅ 当前版本
- 服务器上会保存一份备份
📋 示例
检测前
版本历史列表:
(暂无记录)
点击「检测当前版本」后
版本历史列表:
✅ existing_20231220_143025 (当前)
部署时间: 2023-12-20 14:30:25
大小: 12.3 MB
备注: 检测到的现有版本(2023-12-20)
💡 注意事项
-
不会影响线上服务
- 只读取文件信息
- 创建备份副本
- 不修改运行中的文件
-
只能检测一次
- 如果已有版本记录,建议先查看现有记录
- 如需重新检测,可先删除旧记录
-
需要 SSH 权限
- 需要读取
/var/www/app/目录 - 需要写入
/var/www/app_versions/目录
- 需要读取
❓ 常见问题
Q: 检测到的版本号为什么是 existing_... 格式?
A: 为了区分:
existing_YYYYMMDD_HHMMSS= 检测到的现有版本YYYYMMDD_HHMMSS= 通过工具部署的版本backup_YYYYMMDD_HHMMSS= 自动备份的版本
Q: 检测后可以回滚吗?
A: 可以!检测后的版本和部署的版本功能完全一样,都可以回滚。
Q: 如果 /var/www/app/ 为空会怎样?
A: 会提示「目录为空或不存在」,不会创建记录。
Q: 检测失败怎么办?
A: 检查:
- SSH 连接是否正常
/var/www/app/目录是否存在- 是否有读取权限
🎯 适用场景
-
首次使用工具
- 服务器上已有部署的版本
- 想将现有版本纳入版本管理
-
迁移到新工具
- 之前手动部署的版本
- 想使用版本管理功能
-
重新初始化
- 版本记录丢失
- 需要重新建立记录
开始使用:python deploy_tool.py,点击「🔍 检测当前版本」 🔍