125 lines
2.7 KiB
Markdown
125 lines
2.7 KiB
Markdown
# 🔍 检测现有版本功能
|
||
|
||
## 问题场景
|
||
|
||
如果你的服务器上已经有部署的版本(在 `/var/www/app/`),但版本管理系统中没有记录,可以使用「检测当前版本」功能。
|
||
|
||
---
|
||
|
||
## 🚀 使用步骤
|
||
|
||
### 1. 启动部署工具
|
||
```bash
|
||
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)
|
||
```
|
||
|
||
---
|
||
|
||
## 💡 注意事项
|
||
|
||
1. **不会影响线上服务**
|
||
- 只读取文件信息
|
||
- 创建备份副本
|
||
- 不修改运行中的文件
|
||
|
||
2. **只能检测一次**
|
||
- 如果已有版本记录,建议先查看现有记录
|
||
- 如需重新检测,可先删除旧记录
|
||
|
||
3. **需要 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**: 检查:
|
||
1. SSH 连接是否正常
|
||
2. `/var/www/app/` 目录是否存在
|
||
3. 是否有读取权限
|
||
|
||
---
|
||
|
||
## 🎯 适用场景
|
||
|
||
1. **首次使用工具**
|
||
- 服务器上已有部署的版本
|
||
- 想将现有版本纳入版本管理
|
||
|
||
2. **迁移到新工具**
|
||
- 之前手动部署的版本
|
||
- 想使用版本管理功能
|
||
|
||
3. **重新初始化**
|
||
- 版本记录丢失
|
||
- 需要重新建立记录
|
||
|
||
---
|
||
|
||
**开始使用:`python deploy_tool.py`,点击「🔍 检测当前版本」** 🔍
|
||
|