我有一个Rails 3应用程序我正在与一个使用Git / Github的团队一起开发并部署到Heroku雪松堆栈。我们的Github存储库有两个主要分支Master和Development。
我想将我们的Development分支定期推送到Heroku上的另一台服务器作为开发/暂存环境。
在不破坏我们的Git流程的情况下,将我们的开发分支推送到与Master不同的应用程序的最简单方法是什么?
非常感谢!
答案 0 :(得分:7)
您需要添加第二个git遥控器,即您的第二个应用程序的heroku git repo url到您的应用程序,以便能够从单个代码库推送到该应用程序。
目前您可能拥有名为“heroku”的默认远程源,它正在推送到您的生产应用程序。
您需要添加第二个远程源,指向您打算用于分段的新Heroku应用程序,例如
git remote add staging <git repo url from 'my apps' page on heroku>
一旦你设置了新的git origin,你可以通过;
推送它git push staging <branch to deploy>:master
答案 1 :(得分:1)
简单。 Heroku总是使用master分支,但是使用Git将允许你将/ your / development分支推送到/他们/ master
例如:
git push heroku development:master
其中heroku
是您的heroku开发环境的起源,development
是您的本地开发分支。如果您不希望您的dev分支在生产模式下运行,您可能还希望覆盖Heroku上的RACK_ENV
var(尽管我个人会在您的代码中创建一个暂存环境,它会执行缓存等,但不会发送电子邮件到生产地址等)
答案 2 :(得分:0)
heroku_san是一个Gem,它允许在使用Heroku时进行复杂的部署配置,而无需经常指定您希望在命令行上推送哪个Heroku应用程序。它可以让你完全按照上面的描述进行操作。