我正在寻找在GitHub Pages上自动部署GitHub项目的方法。
我有一个文件夹packages/client/dist/
,在dev
分支中有一个部署构建。我正在搜索一个git命令,它可以将其内容复制/推送到我项目的deploy
分支的根文件夹中(以便在GitHub Pages上可用)。如果它还可以在推送之前删除那里的所有旧文件,那就太好了。
所以我需要这样的文件:@dev/packages/client/dist/
(本地)〉@deploy/
(远程)。
我的想法是在我对dev
分支做了一些修改并运行了yarn build
之后,我编写了类似yarn deploy:ghp
的东西,可以做上面提到的事情。
我玩过git checkout
,但它似乎没有做我需要的。这也可能是一个问题,packages/client/dist/
是在.gitignore
。任何帮助/建议将不胜感激。
我在dev
分支上尝试了以下方法:
git add -f -- ./packages/client/dist
git commit -m "chore: test deploy commit" -- ./
git push -f origin dev:deploy
以及
git add -f -- ./packages/client/dist
git stash
git checkout -b deploy
git stash pop
git commit -m "chore: test deploy commit" -- ./
git push -f origin deploy
但它只是将所有文件从dev
推到deploy
(之前是空的),而没有复制dist
文件夹。
1条答案
按热度按时间dsekswqp1#
如果我没有理解错的话,您希望将
packages/client/dist
目录从dev
分支发布到deploy
分支的根目录。从你的
dev
分支开始,你可以这样做(假设你的gh-pages
分支已经存在):如果所有这些看起来有点复杂,那么使用类似
ghp-import
script的代码;使用该工具,流程如下: