我正在尝试使用gitlab及其CI/CD设施将网站部署到远程服务器上。我正在使用一个名为中间人的静态站点生成器,该生成器将所有文件生成构建文件夹。这在本地起作用,如果我要手动上传文件,它将准确地反映我想要的内容。问题是在使用以下命令时,尽管它正确生成了所有文件;
$ lftp -c "set ftp:ssl-allow no; open -u $USERNAME,$PASSWORD $HOST; mirror -Rv build/ ./public_html --delete-first --ignore-time --parallel=10 --exclude-glob .git* --exclude .git/"
这是最终被吐出的原因;
Removing old file `stylesheets/styles-bb5541bd.css'
Removing old file `stylesheets/styles-bb5541bd.css.gz'
Transferring file `stylesheets/styles-4deda93b.css'
Transferring file `stylesheets/styles-4deda93b.css.gz'
您正在使用资产哈希,但是这里正在更新样式表的哈希,但没有在单个的HTML文件中反映出显然是指新哈希的单个HTML文件...什么给出了?文件本身已更新,但没有上传。
对此的任何帮助将不胜感激。
对您来说可能为时已晚,但是问题是" - ignore time"。如果文件大小保持不变,则不会重新上传。因此,从html文件中的'stylesheets/stylesheets/styles-bb5541bd.css'到'stylesheets/styles-styles-4deda93b.css'
更新:由于直接使用LFTP的这些问题,我现在使用git-ftp。
这是我的.gitlab-ci.yml
https://gist.github.com/westhouseit/5310A21CA6E6218EBC20BA94530BB0A6
和.git-ftp-ignore
https://gist.github.com/westhouseit/d3e84f3c26d733b286c0481f957052ef