这显然是我误解的事情,但我拼命想找到答案。
我一直在教自己React with create-react-app,我运行“npm run build”来吐出我已经完成的项目,然后我将项目推送到私人bitbucket repo。
我的期望是然后SSH到我的服务器,然后git克隆/ build目录以使这个项目生效。显然这是可能的(如果我从.gitignore中删除/构建),但由于/ build目录在.gitignore中,这显然不是预期/期望的行为。
所以,我的问题是 - 什么是?如何在没有从git(显然没有FTP)的情况下将完成的构建发布到服务器上?
谢谢!
答案 0 :(得分:5)
构建目录位于.gitignore中,因为它可以从现有文件生成。
为了最大限度地减少上传/下载时间,只有基本项目应保存在git仓库中。任何可以生成的东西都不需要在repo中(在这种情况下是构建目录)。
如果您正在使用具有节点(AWS,Heroku等)的服务器,则可以git clone
服务器上的整个存储库,然后在npm run build
之后运行npm install
。然后你可以做类似
npm install -g serve
serve -s build
serve
模块提供静态文件,您将build
文件夹作为参数传递。
如果您正在处理更老式的服务器,例如使用cPanel等的Apache静态托管,那么您需要上传包含静态文件和index.html的整个build
目录。