我不知道这是否适合问这个问题,但是当涉及到Grunt和部署时,我正在努力使用“最佳实践”。我的团队使用bitbucket将repos和rackspace作为服务器托管。使用Git进行Grunt部署
我使用grunt将我的网站构建成静态文件(将ejs/less编译为静态html/css)。我有手表任务,并督促咕噜咕噜开发其完成所有的优化/缩小等
目前部署过程是:
1)咕噜督促
2)git的承诺/ GIT中推
3)到位桶提交pull请求,合并的代码到主
4)ssh进入服务器和git拉力。
这可以确保我在服务器上拥有的任何东西都是git commit并且已经过审查。我遇到的其中一个问题是,有时我忘记在提交之前运行grunt prod,然后结束未优化的站点。
我已经研究过使用ssh deploy方法,基本上是在运行grunt prod之后通过FTP传输文件。这将消除必须SSH服务器和知道命令的步骤。我担心这种方法可能最终与git不同步,并避免代码审查/请求的步骤。
我认为我正处在正确处事的风口浪尖上,但我觉得我必须错过一些东西!
有什么建议吗?由于
我坚信可分发文件应该远离版本控制。你有没有想过翻转事物并仅将* source *文件提交给Git,然后使用Grunt作为部署工具来检出,构建和部署文件?这样,整个部署管道就会自动完成,不可能错过一个步骤或提交错误的文件。 – 2015-02-06 18:25:13
感谢@AntP的快速回复!我已经考虑过了,但是我一直无法围绕如何正确做到。你能详细说明你的建议吗? – raydeneg 2015-02-06 18:31:39