[英]Heroku app seems to be pulling from wrong Git respository/branch
我的问题似乎是由于我对Git和Heroku的通讯方式缺乏了解,但是这里是:
我/曾经有两个Heroku应用程序可以在同一个项目上正常运行-一个阶段和一个生产。 最初,我将两个应用程序都连接到Git存储库中的同一master branch
。 我只是使用git push heroku-staging master
将所有登台更改推送到登台应用程序,而当我想推送到生产应用程序时,我只需运行git push heroku master
。
为了清楚起见,这些是我的遥控器。 我用my-app
替换了my-app
:
heroku https://git.heroku.com/my-app.git (fetch)
heroku https://git.heroku.com/my-app.git (push)
heroku-staging git@heroku.com:my-app-staging.git (fetch)
heroku-staging git@heroku.com:my-app-staging.git (push)
origin git@github.com:My-app/my-app.git (fetch)
origin git@github.com:My-app/my-app.git (push)
这是我的分支机构:
dev cbafa55 added new badge
master cb5f4c4 split seeds into different services
* staging cbafa55 added new badge
最近,我意识到我应该将所有登台更改都保留在存储库中的单独登台分支中,并将生产环境保持在master分支中的某个位置。
因此,我现在要使用存储库中的一个暂存分支(已经存在但未被使用)来处理要投放到暂存应用程序的所有内容,而master分支将用于生产应用程序。
我遇到了一些麻烦,无法使暂存分支与我本地的匹配,所以我只使用了git reset --hard (commit_id)
,其中commit_id是我最后一次满意的提交。 因此,在这一点上,我在git repo中的登台分支与我想要的位置完全匹配,我在github上确认以确保登台分支上的所有内容都相同。
但是,当我现在开始进行heroku分期时,它似乎仍在从master分支中撤出。 即使我目前在我的暂存分支中,并从那里进行推送。 我添加了所有内容,并提交了所有内容,但是当我将其推送时,它告诉我所有内容都是最新的,并且在我的登台应用程序上,我在日志中看到一个相当老的熟悉错误(只是我记得在应用程序中搞砸了一些错误)本身)。 但是,当我查看暂存分支时,它没有产生该错误的代码。 但是,我的master分支仍然具有产生该错误的代码(因为我有一段时间没有推送到master分支了)。
我已经尝试使用git push heroku-staging staging
和git push heroku-staging master
两者,它们都来自我的本地staging分支(具有我的所有当前更改),这两者都会产生一条消息,指出所有内容都是最新的。 我不确定heroku应用程序如何确切地建立与分支的连接,但是这是我能想到的仅有的两个选择。
我还在heroku仪表板上查看了我的应用程序的活动,并说最新的构建成功,并部署了cb5f4c4
,这是我的master分支(我不希望的)的最新提交。 这是有道理的,我的heroku-staging应用程序正在产生master分支上存在的错误,但是我不确定为什么要使用此提交。
对于小说的问题表示歉意,但只是想对我已经做过的/尝试过的事情进行彻底的了解。
我碰壁了,再也想不出什么主意了。 有什么想法吗?
如果要将staging
分支中的更改推送到配置为git remote heroku-staging
Heroku登台站点,则需要执行以下操作:
git push heroku-staging staging:master
Heroku将仅部署master分支,因此您需要将本地staging
分支推送到远程master
。 看起来有些怪异,但这只是将本地分支推送到另一个远程分支的git命令。
好像您需要这样:
git push heroku-staging staging:master
这会将所有更改从本地staging
分支推送到heroku-staging
远程master
。
有关如何将不同的本地git分支推送到heroku的更多信息,请参见此stackoverflow帖子 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.