【问题标题】:Rails keeping git versions correctlyRails 正确保持 git 版本
【发布时间】:2013-04-29 01:11:42
【问题描述】:

我希望这对 StackOverflow 来说是一个不错的问题。如果不是,请告诉我。谢谢!!

我的第一个 Rails 应用程序即将投入生产。我正在使用 GIT 和 Github 进行版本控制。我正在使用 CAP 部署到我们自己的服务器。

我们有一台用于暂存的服务器和一台用于生产的服务器。

所以,可以说这是生产的第一天。我还在 iMac 上编写新功能。所以,我正在进行更改并保存到 GIT、Github 和 staging。

但是,用户遇到了一个小错误,我需要在生产中快速修复。

嗯,我已经开始对代码进行重大更改,我不想将其投入生产。

如何快速解决用户需要的问题?

感谢您的帮助!

【问题讨论】:

    标签: ruby-on-rails git capistrano


    【解决方案1】:

    我假设你有一个 prod 分支和一个 devel 分支,并且 prod 的尖端是已发布到 prod 的内容。

    你可以;
    1.git stash所有当前工作,如果你还没有提交的话。
    2.git checkout prod
    3. 为您的热修复创建一个新分支,修复它,将其合并回prod 并发布它。
    4. git checkout develgit stash apply 如果你需要,你的藏匿处。
    5. git merge prod 进入你的devel 分支,这样它就有你刚刚部署的热修复。

    如果您没有单独的 prod 和 devel 分支,现在可能是设置它们的好时机 :)

    参见 progit book 的 6.3 存储 部分。

    http://git-scm.com/book

    【讨论】:

    • +1 并且这个hotfix也应该合并到devel,这样下一个版本就不会出现同样的bug了。
    • 我是否建立分支并从 Github 进行结帐?
    • 我会在本地分支并推送到github...我不使用GitHub所以不知道您是否可以直接在那里创建分支。
    • 快速提问 - 第 3 步 - 为什么要创建热修复分支?为什么不对 prod 进行热修复?
    • 如果您愿意,您可以这样做。如果您是唯一的开发人员,也许这是最简单的解决方案。但是,我强烈建议设置分支策略like this。随着您的项目增长,它将很好地扩展......如果您的项目没有增长?好吧,至少你已经学会了下一次的可扩展分支策略:)
    【解决方案2】:

    您可以为 fixies 创建一个分支,在那里修复错误,并使用此分支更新生产服务器上的应用程序。稍后您将合并它们(分支)。

    【讨论】:

      猜你喜欢
      • 2020-07-11
      • 1970-01-01
      • 2015-08-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多