4

有点笼统的“您认为最好的解决方案是什么”的问题,但是我已经阅读并且已经阅读,但我似乎并没有找到所有问题的所有答案。

我在一家有 3 名开发人员(2 名现场 1 名非现场)的小型网络机构工作,我们仍在使用 FTP(style-1.css,style-2.css)在预览 url 上在线托管的网站上工作,然后我们下载完成工作并将其重新上传到它的实时网址。这是相当老派的,按照我所知道的今天的标准来看是完全错误的,所以我开始研究 Git。我也希望能够使用它来管理部署。

我想做的是:

  • 开发人员在本地工作
  • 开发者推送到服务器上的预览/登台(可公开访问)
  • 客户批准
  • 开发人员将预览推送到直播/开发人员告诉直播从预览中提取

我想知道的是:

  • 我可以在服务器上设置远程存储库来保存我们正在处理的所有文件,这样我们就可以将 URL 指向这些文件以用作预览/登台站点吗?(即为什么我读到这应该是一个裸回购?)
  • 在这种情况下设置“实时”站点的最佳方式是什么?有人可以解释一下,当我们认为它稳定时,我如何设置一个命令(钩子?)从预览站点拉到实时站点?

我已经尝试阅读工作流程,但我还没有找到如何在实时公开(客户端)可访问的工作流程中使用它

提前致谢!

编辑

我收到了使用 GitHub 的建议,但我不想使用它,因为我们有自己的专用服务器,我不介意花时间学习和正确设置它。(我将使用 GitHub 进行个人工作,所以我不会将其视为服务

标题包括 Gitolite,因为我原本打算问如何使用 gitolite 进行设置,但在编写它的过程中,我想我会正确掌握基础知识,因此将其编辑掉,一定是忘记将其从标题中删除。如果有人对此有任何建议,包括 gitolite,我愿意试一试。

感谢到目前为止的建议

4

3 回答 3

2

注意:

于 2013-01-25T07:40:54.180 回答
1

回答我自己的问题

只是想为与我有同样问题的其他人提供我所使用的更新。

最后,为了使用 git 和管理部署,我选择了BeanStalk,但我也考虑过使用Capistrano,甚至可能同时使用它们

感谢Simon撰写这篇文章,感谢Makis解释了我将使用 hooks 做什么,感谢VonC让我避免弄乱我的服务器并使事情变得更加困难。

于 2013-01-29T17:15:48.350 回答
0

如果你能节省几美元并希望这个无忧无虑,我会在GitHub中建立一个 repo 。这样可以省去很多麻烦。私人仓库的 GitHub 成本似乎从 7 美元/月开始。这样做有很多好处,但在您的情况下,最大的好处是无需任何设置即可从任何地方轻松获得存储库。

您要求的脚本只会 a) 将站点设置为在持续时间内指向某个“正在进行的维护”页面,b) 从 GitHub 存储库中提取更改,以及 c) 可能重新启动服务(MySql 等)。我不会完全自动化这个,但也不会太难。

我会使用分支来管理什么是预览和什么是交付级别。所以脚本会从发布分支中拉出头部。

同样,开发人员会使用最适合您的任何分支策略推送到 GitHub。

于 2013-01-25T08:40:19.390 回答