我在BitBucket.org上有多个存储库。每次在本地机器上运行git推送时,我都希望在生产服务器上运行一个git pull。我一直在寻找最好的解决方案,但似乎有很多不同的解决方案。
有人说网络钩子,但在我看来,它们似乎有点不安全。当然,您可以通过默默无闻来应用安全性,但我不确定这对于生产服务器是否真的足够安全。
我也可以设置一个git挂钩,然后推到另一个遥控器上。但我想要始终推送到原点,而不仅仅是生产服务器。
所以我的问题是,什么是自动部署的最佳实践,而不需要在每次我把东西推到原点时就把SSH放到我的生产服务器中并拉动更改呢?
发布于 2017-05-03 21:35:27
你应该和git一起使用CI工具--你可以用纯的git钩子实现你的目标,但我强烈反对。下面是如何使用SemaphoreCI:https://semaphoreci.com/docs/generic-deployment.html建立一个通用工作流--它们有非常好的和初学者友好的文档,如果您有关于CI主题的问题,您应该阅读。
如果您有私有存储库(我猜您使用的是bb),并且您有预算,那么您可以使用http://codeship.com或https://circleci.com/,因为它们有一个免费的层。
如果您愿意离开bitbucket,您可以做的另一件事是使用https://gitlab.com/,然后您可以将您的CI与无限制的构建集成在一起,而不需要任何成本。唯一的缺点是他们的UI有点过于复杂,所以有些事情一开始可能会让人感到困惑,但他们的功能集却是个杀手。
https://stackoverflow.com/questions/43767684
复制相似问题