【问题标题】:how to get the changed files from git for some particular tasks如何从 git 获取更改的文件以执行某些特定任务
【发布时间】:2014-06-04 10:32:20
【问题描述】:

我是一名 php 程序员,我正在构建一个应用程序。

我有一个测试服务器(pagodabox)和一个生产服务器(EC2)。

每项任务完成后,我都会使用 git 进行提交并推送到测试服务器进行测试。 完成几项任务后,我希望将所有这些任务的更改文件移动到我的开发服务器 (EC2)。

那么我该怎么做呢?有什么方法可以将更改的文件直接移动到生产服务器?

还有什么方法可以知道每个任务更改的文件。

我的测试服务器和生产服务器都安装了 git。

【问题讨论】:

    标签: git deployment amazon-ec2 web-deployment pagoda-box


    【解决方案1】:

    通常做的是:

    • 你在测试分支上推送测试服务器
    • 准备就绪后,将该测试分支合并到 master 并推送到 master 上的测试服务器。
    • 你有一个 post-receive 钩子,它在 master 分支上推送时,将推送到 prod 上的 bare 存储库(如“How to do branching approach for multiple sites?”中所示)。
    • 您在 prod repo 上有一个 post receive 挂钩,它将在收到新提交时检查 live 文件夹中的工作树。 (如“git push origin master not pushing the files”中所述)。

    【讨论】:

    • 但是ec2不是我管理的。第二个人可以将更改拉到 ec2 吗?
    • @RobinThomas 确定,如果该人有权访问产品服务器,他/她可以从您的测试存储库中提取。但是同一个人可以在同一个 ec2 裸仓库中放置 post-receive 挂钩,允许您推送到测试服务器,而该服务器又会自动推送到产品 ec2 服务器上。
    猜你喜欢
    • 2023-01-25
    • 1970-01-01
    • 2011-08-08
    • 2019-08-29
    • 2014-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-02
    相关资源
    最近更新 更多