2015-05-24 76 views
3

我正在按照下面的教程將更改推送到我的OpenShift應用程序。將更改推送到OpenShift

$ git clone <git_url> <directory_to_create> 

# Within your project directory 
# Commit your changes and push to OpenShift 

$ git commit -a -m 'Some commit message' 
$ git push 

Git不推送對OpenShift的更改,而是推送到Github。我在哪裏做錯了,或者我該如何將更改推送到OpenShift?先謝謝你。

回答

4

如果你是來自GitHub的git clone'd,你的Git遠程將被設置爲推回到GitHub。您可以將此遙控器更改爲指向OpenShift:

git remote set-url origin ssh://[email protected]/~/git/foo.git/ 

您可以從OpenShift網站獲取有關特定域的此URL。

+0

謝謝,我找到了存儲庫;然而,它給了我(Permission denied(publickey,gssapi-keyex,gssapi-with-mic))錯誤。 – cagatayodabasi

+0

@cagatayodabasi您[讓OpenShift知道您的公鑰](https://openshift.redhat.com/app/account)? – hexafraction

+0

是的,我只寫了'rhc setup'並生成了一個新對,剩下的就完成了。 – cagatayodabasi

4

默認情況下,克隆的存儲庫具有單個遠程設備(名稱爲origin,它是從中克隆的源),而master分支將該遠程設備的master分支設置爲其上游。您可以通過運行git remote -v來查看遠程列表,並通過運行git branch -vv列出哪些分支有上游設置。當你推拉時,你正在與上游分支進行交互。

如果你想改變,你推和拉離,你能夠做一個:

  • 更改origin遠程(as per hexafraction's answer)的URL。這將覆蓋您的新網址的GitHub網址。
  • 添加新的遠程(git remote add openshift $url),並通過推送到遠程明確:

    git push openshift master 
    

    這不會改變上游的默認和git push單獨仍將推到origin

  • 添加新的遠程(與上述相同),並設置在上游分支推動時:

    git push -u openshift master 
    

    這將上游設置爲openshift/master

+1

絕對傾向於保持原來的狀態,並創建一個名爲'openshift'的新遙控器, – stephenmurdoch