-1

我设置 Git 存储库的方式是 Workstation -> Production。用户进行更改、提交、推送,然后在生产环境中看到它们。至少这是我希望的样子。

根据我的研究和这篇文章,每个都设置为 Workstation -> Staging -> Production。不幸的是,由于新服务器的成本以及从事该项目的所有人员都是远程的,我无法采用这条路线。

我的问题是:一旦更改提交并推送到 master,我怎样才能使更改反映在网站上?

谢谢!

4

1 回答 1

1

首先:git 与构建代码或将其部署到生产环境无关。这只是一个VCS。因此,您必须找到一种从 git 触发构建和部署的方法。

Git 有一个钩子的概念,它在某些情况下可以帮助你。如果您是Productionrepo 的维护者(我相信它是 repo),只需post-receive在其上配置 hook 以触发您需要的内容。但我需要承认,钩子是一种低级解决方案,您必须为所有要执行的操作编写批处理。

使用githubbitbucket没有问题,只需转到Settings-> Service Hooks(github) 或Administration-> Services(bitbucket) 并在那里为 repo 配置 hooks。这样做的缺陷是您只能触发一小部分公共服务,并且它可能无法与您的 Intranet 软件一起使用。

恕我直言,最强大的方法是维护您自己的持续集成服务器(Travis CI可以在简单的情况下适合您)并将其配置为轮询您的 repo 并自动构建发布分支(包含您需要的所有测试!)在后期部署阶段. 在这种情况下,您将完全控制发布代码的过程。

于 2013-02-28T08:10:59.597 回答