Heroku的策略是忽略除“主节点”之外的所有分支。
虽然我确信Heroku的设计人员有很好的理由来执行这个策略(我猜测是为了存储和性能优化),但作为开发人员,我的结果是,无论我从事什么本地主题分支工作。我想要一种简单的方式,将Heroku的主节点切换到本地主题分支,并在Heroku上做一个“git Push Heroku-f”来重写主节点。
我从阅读“推送刷新”一节中得到了什么http://prinit.org/book/ch9-5.html是
git push -f heroku local-topic-branch:refs/heads/master
我真正想要的是一种在配置文件中设置这一设置的方法,这样“git Push Heroku”总是可以完成上面的操作,替换局部主题分支不管我现在的分支是什么。如果有人知道如何做到这一点,请告诉我!
当然,这方面的背景是,只有当我是唯一一个能够推动Heroku应用程序/存储库的人时,这才是明智的。测试或QA团队可能管理这样的存储库来尝试不同的候选分支,但是他们必须进行协调,以便他们在任何特定的一天都能就自己要推到哪个分支上达成一致。
不用说,拥有一个单独的远程存储库(比如GitHub)也是一个非常好的主意,而没有这种支持所有内容的限制。我把它称为“起源”,并使用“Heroku”作为Heroku,这样“git Push”总是将所有的东西都备份到原点,而“git Push Heroku”则将我目前在Heroku的主分支中的任何分支推送到Heroku的主分支,如果有必要,将其覆盖。
这个有用吗?
[remote "heroku"]
url = git@heroku.com:my-app.git
push = +refs/heads/*:refs/heads/master
在我开始实验之前,我想听听更有经验的人的意见,尽管我想我可以在Heroku上创建一个虚拟应用程序,并对此进行实验。
至于获取,我并不关心Heroku存储库是否是只写的。我仍然有一个单独的存储库,比如GitHub,用于备份和克隆我所有的工作。
标注:这个问题类似于好的Git部署使用分支策略与Heroku?
发布于 2018-01-25 10:28:59
当使用通配符时,它必须出现在折射规范的两边,所以+refs/heads/*:refs/heads/master
都没用。但你可以用+HEAD:refs/heads/master
:
git config remote.heroku.push +HEAD:refs/heads/master
而且,您可以直接使用git push:
git push heroku +HEAD:master
git push -f heroku HEAD:master
https://stackoverflow.com/questions/-100007237
复制相似问题