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

时间:2015-09-29 14:06:08

标签: git

让我觉得git在演奏大提琴时几乎可以煮咖啡,所以它必须足够强大才能做到这一点。

我正在开发一个应用程序,代码存储在github上,我正在将它从Heroku迁移到OpenShift。结果,origin是github,我有一个名为migrate_to_openshift的分支。这个分支的上游是origin/migrate_to_openshift,我不想改变它 - 我想要一个简单的git push推送到github上的同一个分支。

但是,要部署到OpenShift,我必须在openshift遥控器上推送到master。目前,这意味着我需要git push openshift migrate_to_openshift:master,这有点啰嗦。我可以配置git,以便git push openshift默认执行此操作吗?

1 个答案:

答案 0 :(得分:2)

根据the git-config documentation

  

remote.<name>.push
  git-push(1)的默认“refspec”集。见git-push(1)。

因此,将remote.openshift.push设置为migrate_to_openshift:master应该这样做,尽管它会在每个时间运行git push openshift(没有其他参数),无论你在哪个分支。

(我通常发现这些事情太过于难以理解 - 我只是为特殊情况制作别名,例如git config alias.po "push openshift migrate_to_openshift:master"然后git po来运行它。否则我开始依赖魔法,我可以找到,但从来没有记得很容易,然后我尝试在同事的设置上做这样的事情,它乱七八糟地爆炸。)