Gitlab CI 删除用户附件和上传文件
Gitlab CI removes user attachments and uploaded files
我正在使用 Git 和 Gitlab。
使用 Gitlab CI pipelines (.gitlab-ci.yml
file) 我正在尝试将我的项目部署到共享主机。
它工作正常,但是当管道运行时,它会删除用户附件、个人资料图片、文档和用户直接上传到主机的所有文件,而这些文件不存在于 git master 分支中。
我应该怎么做才能让 Gitlab 忽略我的 uploads
文件夹和管道中的所有子文件夹?
这里有 .gitignore
个文件:
.idea
files/
这是我的 .gitlab-ci.yml
文件:
deploy:
script:
- apt-get update -qq && apt-get install -y -qq lftp
- lftp -c "set ftp:ssl-allow no; open -u "USER","PASSWORD" "HOST"; mirror -Rnev ./ ./public_html --ignore-time --parallel=10 --exclude-glob .git* --exclude .git/"
only:
- master
这与 Git 无关,与您的 lftp
命令有关。当您使用 lftp
上传数据时,您正在使用 -e
(--delete
) 选项 mirror
,手册页将其指定为“删除不存在的文件”来源”。由于您上传的文件不在源中,因此已被删除。
如果你想继续使用这个选项,你需要将你的uploads文件夹从同一个根目录移到一个单独的目录;否则,您应该停止使用此选项。
我正在使用 Git 和 Gitlab。
使用 Gitlab CI pipelines (.gitlab-ci.yml
file) 我正在尝试将我的项目部署到共享主机。
它工作正常,但是当管道运行时,它会删除用户附件、个人资料图片、文档和用户直接上传到主机的所有文件,而这些文件不存在于 git master 分支中。
我应该怎么做才能让 Gitlab 忽略我的 uploads
文件夹和管道中的所有子文件夹?
这里有 .gitignore
个文件:
.idea
files/
这是我的 .gitlab-ci.yml
文件:
deploy:
script:
- apt-get update -qq && apt-get install -y -qq lftp
- lftp -c "set ftp:ssl-allow no; open -u "USER","PASSWORD" "HOST"; mirror -Rnev ./ ./public_html --ignore-time --parallel=10 --exclude-glob .git* --exclude .git/"
only:
- master
这与 Git 无关,与您的 lftp
命令有关。当您使用 lftp
上传数据时,您正在使用 -e
(--delete
) 选项 mirror
,手册页将其指定为“删除不存在的文件”来源”。由于您上传的文件不在源中,因此已被删除。
如果你想继续使用这个选项,你需要将你的uploads文件夹从同一个根目录移到一个单独的目录;否则,您应该停止使用此选项。