fix: handle non-empty directory on first deploy
This commit is contained in:
@@ -36,10 +36,21 @@ echo "========================================"
|
|||||||
|
|
||||||
# ================= Step 1: 更新代码 =================
|
# ================= Step 1: 更新代码 =================
|
||||||
echo "========== 更新代码 =========="
|
echo "========== 更新代码 =========="
|
||||||
|
|
||||||
|
# 确保目录存在
|
||||||
|
mkdir -p "${PROJECT_DIR}"
|
||||||
cd "${PROJECT_DIR}"
|
cd "${PROJECT_DIR}"
|
||||||
|
|
||||||
if [ ! -d ".git" ]; then
|
if [ ! -d ".git" ]; then
|
||||||
echo "首次部署,克隆仓库..."
|
echo "首次部署,克隆仓库..."
|
||||||
|
# 检查目录是否为空,非空则备份
|
||||||
|
if [ "$(ls -A ${PROJECT_DIR} 2>/dev/null)" ]; then
|
||||||
|
echo "目录非空,备份现有文件..."
|
||||||
|
backup_dir="${PROJECT_DIR}_backup_$(date +%Y%m%d_%H%M%S)"
|
||||||
|
mkdir -p "${backup_dir}"
|
||||||
|
mv ${PROJECT_DIR}/* ${PROJECT_DIR}/.[!.]* ${backup_dir}/ 2>/dev/null || true
|
||||||
|
echo "已备份到:${backup_dir}"
|
||||||
|
fi
|
||||||
git clone "${GIT_REPO}" .
|
git clone "${GIT_REPO}" .
|
||||||
git checkout "${GIT_BRANCH}"
|
git checkout "${GIT_BRANCH}"
|
||||||
else
|
else
|
||||||
|
|||||||
Reference in New Issue
Block a user