【问题标题】:Automatically synchronizing my local directories from GitHub从 GitHub 自动同步我的本地目录
【发布时间】:2011-09-11 23:04:38
【问题描述】:

我有一个 PHP 应用程序开发平台,计划托管在 Github 上。

我正在使用这个平台为 8 台由 Ubuntu 提供支持的不同服务器上的大约 8 个不同的站点/项目提供支持。我需要保持所有文件同步(但不一定是实时的 - 可能每 15 分钟一次),即我将文件提交到 Github,然后我的本地目录会自动在 8 台服务器上,以便它们包含最新的文件。

我不需要本地目录来保留历史记录,我只需要更新它们以反映 Github 存储库的最新版本,即用新版本覆盖最后一组更改,并删除所有本地文件和可能已从我的 github 存储库中删除的目录。

我需要在 8 台服务器上都安装 Git 吗?如果是这样,是否有一个命令可以让我轻松地做到这一点,以便我可以将它包装在一个 cron 作业或其他东西中?

谢谢。

【问题讨论】:

标签: php git


【解决方案1】:

我想你正在寻找Continuous Integration

有许多不同的选项可供选择,其中大多数可以让您的服务器与 Github(或任何其他 git 服务器)的最新版本保持同步

  • Jenkins(被 Github 和许多其他公司使用)
  • CI Joe(由 Github 的 Defunkt 制作,用 ruby​​ 编写)

还有很多其他可用的,但搜索“持续集成”可能会找到答案

【讨论】:

  • 谢谢。但是,这对于我正在完成的工作来说太过分了。
【解决方案2】:

最简单的方法是在服务器上安装 git,然后执行

GIT_DIR=/path/to/your/repo (git fetch && git reset --hard origin/master)

显然用你的远程和分支替换 origin/master。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-03
    • 2022-01-06
    • 2010-11-30
    相关资源
    最近更新 更多