我有一个Rails应用程序部署在Heroku上,我有一个git repo,目前正在处理未提交的代码更改。与此同时,我需要在Heroku上独立于本地回购对源进行更改。我能做到以下几点:使用Git分支
- 克隆同样的开发机器上Heroku的git仓库使用不同的应用程序的名称虽然相同的帐户
- 进行更改,新的本地回购
- 提交这些更改新的本地回购
- 推动这些变化对Heroku的回购
- 简历上我原来的本地回购工作
请问这个方法工作?
我有一个Rails应用程序部署在Heroku上,我有一个git repo,目前正在处理未提交的代码更改。与此同时,我需要在Heroku上独立于本地回购对源进行更改。我能做到以下几点:使用Git分支
请问这个方法工作?
是的,这个工作流程可以工作,或存储他们 - 不要忘记,如果你做了一个英库回购的克隆,你会改变回购的另一个克隆,你需要原始本地回购中的这些更改。
将来我会建议你假设你的'master'分支是Heroku上的生活分支以及工作的分支 - 你甚至可以将这个分支推送到一个新的应用中进行测试。通过这种方式,可以在本地主分支(或其他分支并合并到主分支)上执行错误修复,并将其推送到heroku,然后当您完成新工作时,将分支合并回主并将其部署到您的实时环境中。我写了一篇关于此主题的博客文章,here
我还没有使用过heroku,但如果我想对已部署的应用程序进行更改,而我的沙箱中有未保存的更改,我会执行以下操作之一。
stash
我的局部变化,从那里我想打一个补丁,使它,部署它,切换回我原来的分支,并从弹出藏匿点切一个分支。
提交我的未保存的更改(进当前的分支 - 说work
),切断从那里我想打一个解决方法,让我的修复,部署它,切换回work
点的一个分支,重置我HEAD
之前我的“临时”承诺并恢复工作。
除非您以非常规方式使用git,否则无需再制作其他克隆。
如果您将heroku存储库克隆到单独的目录中,进行了更改并将其从该目录中推入,那么稍后就有可能发生冲突。
如果它只存在未提交更改的问题,那么肯定可以使用“git stash”存储它们,然后使用“git stash pop”检索它。
我的工作周期:我总是用#1规则保留master
分支“在提交到master
后总是推送到Heroku”。如果我在我不想立即部署的东西上编码,我必须分支。
我知道这不适用于所有用例,但总是有一个与Heroku上的高效应用程序相同的分支让我睡得更好;)