我只是在学习git及其基本原理。我有一个现场Magento商店正在运行,需要尽快版本控制它。我已经在我的工作机器上加载了git,并且已经设置了存储库,添加,提交和推送文件。我已使用Assembla和免费帐户(暂时)测试了我的设置,一切都很好。
我仍然无法进行物理变化。我想实现以下目标(我想!):
因此,我需要帮助解决几个重要问题。
我们商店/项目的一些有用背景:
如果有人可以为像我这样的人做过指导教程或者类似工作,我会很高兴,他们做了所有事情,现在没有时间一步一步地学习git。
答案 0 :(得分:5)
将回购邮件发送到实际网站的过程是什么?
Git没有内置的功能。你需要定期编写一个脚本(例如,每五分钟一次)或按需从中央仓库中抽取一些分支。 (我假设你在某个地方有一个Git服务器。)
您可以为生产环境执行相同的操作,方法是让登台服务器拉出master
,然后让生产服务器拉出分支production
。
答案 1 :(得分:4)
将您的dev
服务器视为您(以及可能的其他开发人员)制作,测试和完成更改的位置。将stage
服务器视为显示其他利益相关者在转到production
或实时网站之前的潜在变化。
我个人为每个服务器使用一个分支(我们甚至将本地计算机指定为alpha
服务器,然后再转到dev
/ staging
),并按层次结构考虑它们:
更改从alpha
开始并向上合并 - 因此从alpha
开始的错误修正合并或cherry-picked
合并到dev
,检查,然后向上推到{{ 1}}并最终到stage
。要进行更新,分支只是prod
并以这种方式同步。每个服务器都有一个repo的副本,在出现任何问题时可以提供额外的冗余。
我们拥有自己的git存储库使用pulled
,我们(轻松)自定义它来处理@ larsman的答案中描述的gitolite
和push
职责 - 不幸的是,因为你'在共享主机上,这可能不是您理想的解决方案。无论哪种方式,你都应该考虑运行VPS,因为Magento是非常耗费资源的,加载时间也会受到很大影响 - 这是尝试让Magento在HostGator上工作的人的第一手建议。