【发布时间】:2021-03-15 12:19:53
【问题描述】:
我在我的项目中使用 VueJS 2,但我意识到我的构建部署很糟糕。
这是我在 github 上部署我的 VueJS 构建的脚本:
#!/usr/bin/env sh
# abort on errors
set -e
# build
cd ../..
VUE_APP_ENV=demo vue-cli-service build
# navigate into the build output directory
cd dist
git init
git add -A
git commit -m 'deploy'
git push -f git@github.com:MyRepo/my-project.git master:my-project-demo-deployment
cd -
rm -rf dist/
之后,我转到远程服务器并使用以下命令获取新版本:
git pull origin --rebase
我正在使用这个命令,因为我没有 git 历史记录,所以我无法拉取。每次构建都被删除,因为我删除了dist/ 文件夹。
但是这种在远程服务器上部署我的构建的方式不是很好,因为我不能轻易地回到以前的提交,因为我有一个并且每次构建/推送时只提交。
我想知道是否有解决方案可以在 github 上部署我所有不同的构建,以便在远程服务器上正常执行 git pull 我的新构建。我必须编辑我的脚本,但我不知道什么是最好的解决方案。也许我必须创建另一个仓库来存储我所有的构建提交?我不知道。我希望你能帮助我。
【问题讨论】:
-
部署+回滚+跟踪全流程为什么不用一个平台呢? (Netlify, Vercel)
-
您的意思是构建应用程序的服务器?
-
像 Netlify 这样的平台将跟踪特定的 github 存储库(您将在其中随意推送您的最新代码),然后它将在自己的服务器上获取它,运行
yarn build,并将其公开在其中一个他们的 URL 或自定义域(您自己的)。而且它是免费的,尤其是对于基本用途。 -
哦,好吧,使用 Netlify,我可以在我的分支中选择任何提交,并使用此提交进行新的构建 + 部署?
标签: git vue.js deployment