用于Web应用程序的Git开发和生产分支

时间:2013-09-18 21:26:39

标签: git version-control

我理解如何设置它的分支逻辑,我将生产分支作为主设备,并为开发人员提供开发分支,但我如何考虑:

  1. 配置文件

    • 使用不同的数据库设置进行生产(git忽略并单独保留配置静态?)
  2. 如何在服务器的不同目录中对文件进行版本控制?

    • / var / apps:包含不同应用程序的PHP代码
    • / var / www / bapp-t:development web root
    • / var / www / bapp-p:production web root
    • / var / map:一些映射代码
  3. 当使用git在文件系统的不同区域中时,我如何对Web根和应用程序框架进行版本控制? Git要求你将repo名称作为主文件夹,但在我的设置中没有办法遵守它?我应该只使用符号链接挂钩根源吗?

1 个答案:

答案 0 :(得分:0)

一种可能的解决方案是版本控制脚本以更新生产。例如,在生产时,您将检出所有相关文件:

~/production-master/var/apps
~/production-master/var/www/bapp-t
~/production-master/var/www/bapp-p
~/production-master/var/map
~/production-master/update-production.sh

结帐后,调用update-production.sh脚本对您的生产环境进行安全更新。 重要提示:请务必仔细测试此脚本!

您可以使用钩子在正确的git命令之后自动调用脚本。例如,在将更新推送到生产环境后,可以使用post-receive钩子来调用脚本。

请注意,git无法控制不相关的目录。公共目录的子目录是可以的。在您的情况下,您可以考虑使用多个存储库。