Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
web应用程序的Git开发和生产分支_Git_Version Control - Fatal编程技术网

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

web应用程序的Git开发和生产分支,git,version-control,Git,Version Control,我理解如何将生产分支设置为主分支,并为开发人员设置开发分支的分支逻辑,但我如何考虑: 配置文件 使用不同数据库设置的生产(git忽略并保持配置静态?) 如何对服务器不同目录中的文件进行版本设置和控制 /var/apps:包含不同应用程序的PHP代码 /var/www/bapp-t:developmentwebroot /var/www/bapp-p:生产web根目录 /var/map:一些映射代码 当web根目录和应用程序框架位于使用git的文件系统的不同区域时,我将如何对它们进行版本设

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

  • 配置文件

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

    • /var/apps:包含不同应用程序的PHP代码
    • /var/www/bapp-t:developmentwebroot
    • /var/www/bapp-p:生产web根目录
    • /var/map:一些映射代码

  • 当web根目录和应用程序框架位于使用git的文件系统的不同区域时,我将如何对它们进行版本设置?Git要求您将repo名称作为主文件夹,但在我的设置中,没有办法遵守这一点?我应该使用符号链接来钩住根吗?

    一个可能的解决方案是对脚本进行版本控制,以更新生产。例如,在生产过程中,您签出所有相关文件:

    ~/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接收钩子来调用脚本

    请注意,git无法控制无关目录的版本。公共目录的子目录正常。在你的情况下,你可以考虑使用多个存储库。

    这是一个类似的问题: