Git 始终推送到远程上的不同分支,而不设置上游

Git 始终推送到远程上的不同分支,而不设置上游,git,Git,让我印象深刻的是,git几乎可以在演奏大提琴的同时煮咖啡,所以它一定足够强大,可以做到这一点 我正在开发一个应用程序,代码存储在github上,并且正在将它从Heroku迁移到OpenShift。因此,origin是github,我有一个名为migrate\u to\u openshift的分支。这个分支的上游是origin/migrate\u to\u openshift,我不想改变这一点-我想要一个简单的git push来推送到github上的同一个分支 然而,要部署到OpenShift,我

让我印象深刻的是,git几乎可以在演奏大提琴的同时煮咖啡,所以它一定足够强大,可以做到这一点

我正在开发一个应用程序,代码存储在github上,并且正在将它从Heroku迁移到OpenShift。因此,
origin
是github,我有一个名为
migrate\u to\u openshift
的分支。这个分支的上游是
origin/migrate\u to\u openshift
,我不想改变这一点-我想要一个简单的
git push
来推送到github上的同一个分支

然而,要部署到OpenShift,我必须在OpenShift遥控器上按下
master
。目前,这意味着我需要将openshift迁移到openshift:master,这有点冗长。我是否可以配置git,以便默认情况下,
git push openshift
将执行此操作?

根据:

remote..push

git push的默认“refspec”集(1)。参见git推送(1)

因此,设置
remote.openshift.push
to
migrate\u-to\u-openshift:master
应该可以做到这一点,尽管它会在每次运行
git-push-openshift
(没有附加参数)时发生,而不管您在哪个分支上


(我通常觉得这些事情太棘手了,不必麻烦——我只是为特殊情况制作了一个别名,例如,
git config alias.po“push openshift migrate_to_openshift:master”
然后
git po
来运行它。否则,我开始依赖魔法,我可以找到它,但永远记不起来,然后我尝试在同事的设置中执行类似的操作,结果它崩溃了。)

谢谢。正如您所指出的,别名可能是明智的选择。