![远程 git 存储库](https://linux22.com/image/572390/%E8%BF%9C%E7%A8%8B%20git%20%E5%AD%98%E5%82%A8%E5%BA%93.png)
我真的很喜欢 git,现在我已经设置了一个远程存储库。这很酷,但我找不到类似的纯数据。我的想法是:
本地开发 > 提交、提交、提交,如果准备好生产 > 推送到远程 > git 存储库是 apache 中的虚拟主机,数据是实时的。
我的想法真的是错误的吗或者我如何才能意识到这一点?
谢谢你的帮助!
答案1
视情况而定——您是否同意将未经测试的代码投入生产?例如——开发人员 A 推动了用于生产的更改,测试了这些更改,看起来不错。与此同时,开发人员 B 测试了一些代码——但哎呀,他打错了,现在应用程序在请求时立即失败。与此同时,开发人员 A 推动了生产,带来了开发人员 B 的错误更改。
您需要一个部署策略——也就是说,您需要始终确保您推送到生产环境中的内容 (a) 经过测试并且 (b) 可靠。我认为生产环境绝不应该“直接从 git”运行,因为这样很容易发生不好的事情——即,如果有人获得了您前端的访问权限,他们现在就可以对您的代码库为所欲为。在最好的情况下,他们可以窃取代码和您的历史记录。在最坏的情况下,他们可以更改您的代码库——很可能您没有意识到。
例如,您可以专门为生产设立一个单独的存储库(您可以根据需要从中分叉然后合并更改),或者将代码部署为单独的存档。这将使您对将要生产的内容有更多控制权和洞察力。
答案2
你的思维过程似乎是正确的,与我的做法非常相似。
我认为本文档将有助于您理解 GIT,它对我有很大帮助,特别是对于具有 Subversion 背景的用户:http://progit.org/ebook/progit.pdf
答案3
如果你对 git 工作流感兴趣,你一定要看看成功的 Git 分支模型和分布式工作流来自 GitBook。