Bereitstellung auf Heroku mit git on bitbucket


81

Ich möchte meine Quelle mit git auf bitbucket hosten, weil ich offensichtlich ein kostenloses privates Repo bekomme und meine App mit dem Quellcode von bitbucket auf heroku hosten möchte.

Kann ich das mit dem Github-Client und dem Heroku-Toolbelt machen? Wird es funktionieren? Github ist großartig, aber ich möchte nicht, dass jeder meinen Code sieht und ich möchte nicht für ein privates Repo bezahlen, weil es ein kleines Projekt ist.


1
Wie haben Sie Ihr Problem genau gelöst? :)
Matthias

1
Es ist eigentlich sehr einfach. Erstellen Sie einfach ein Repo im Bit-Bucket und ändern Sie Ihren Ursprung in der Konfigurationsdatei in den des Repo. Sie können Bitbucket nach Herzenslust verwenden.
Wasswa Samuel

1
In welcher Konfigurationsdatei? Mein konkretes Problem ist folgendes .. stackoverflow.com/questions/18127761/…
Matthias

Antworten:


64

Die Bereitstellung auf Heroku sollte unabhängig davon funktionieren, wo Sie Ihren Code hosten, da die Heroku-CLI für Bereitstellungen eine eigene Git-Fernbedienung hinzufügt. Sie können sogar git pullvon Heroku aus arbeiten, sodass Sie Heroku stattdessen technisch als privates Git-Repository verwenden können (obwohl dies nicht empfohlen wird). Wenn Sie mit dem GitHub-Client eine Verbindung zu Bitbucket herstellen möchten, ändern Sie einfach das Remote-Repository in die von Bitbucket auf der Registerkarte "Einstellungen" des Clients angegebene URL.


5
Wo soll ich die Remote-URL ändern?
MaxySpark

Obwohl die Heroku-Dokumente Folgendes zu diesem Thema zu sagen haben: "Heroku bietet den Git-Service hauptsächlich für die Bereitstellung an, und die Möglichkeit, daraus zu klonen, wird als Annehmlichkeit angeboten. Wir empfehlen dringend, Ihren Code in einem anderen Git-Repository wie GitHub und zu speichern Behandle das als kanonisch. " ( Quelle )
Fabien Snauwaert

@ FabienSnauwaert zustimmen. Ich empfehle definitiv nicht, Heroku Git als primäres VCS zu verwenden. Ich werde sehen, ob ich meine Antwort aktualisieren kann, um dies zu klären. Vielen Dank für das obige Zitat
Xavier

35

Nur um Zeivs Antwort hinzuzufügen, wer sagte, dass es funktionieren sollte: Ich kann bestätigen, dass es funktioniert. Wir verwenden Bitbucket für das Git-Hosting und stellen es für Heroku bereit. Was Sie scheinbar nicht tun können, ist, Ihr Bitbucket-Repo zu Ihrem Heroku-Konto hinzuzufügen, damit der Commit-Verlauf angezeigt wird. Diese Funktion scheint derzeit auf Github beschränkt zu sein (Herokus Fehler ;-)


15

Mit Stefan mithalten - das funktioniert perfekt. Folgendes habe ich getan:

  1. Ich war sehr frustriert darüber, wie mein WP-Blog täglich zurückgesetzt wurde, und präsentierte jedem, der zu http://blog.example.com navigierte, einen Setup-Bildschirm, da es keine wp-config.php gab.
  2. Bei bitbucket.org angemeldet.
  3. Verknüpft meine Bitbucket & Github-Konten.
  4. Gabelte mein "wp-blog" Repo von Github, das ich zuvor mit meiner Heroku-Fernbedienung verknüpft hatte.
  5. In diese neue Gabel geklont ("Git-Klon https: //myname@bitbucket.org/myname/wp-blog_config.git ").
  6. Eine richtige wp-config.php hinzugefügt.
  7. Meine Heroku-Fernbedienung aus dieser neuen Gabelung hinzugefügt ("Git-Fernbedienung Heroku hinzufügen git@heroku.com: Adjektiv-Nomen-1234.git")
  8. Engagiert und für Heroku eingesetzt ("Git Push Heroku Master: Master")

14

Bitbucket unterstützt jetzt Pipelines , was die Bereitstellung auf Heroku ziemlich einfach machen sollte. Folgen Sie einfach diesem Tutorial: https://confluence.atlassian.com/bitbucket/deploy-to-heroku-872013667.html

Mein bitbucket-pipelines.ymlHauptzweig nach Heroku zu schieben sieht folgendermaßen aus:

image: node:6
clone:
  depth: full
pipelines:
  branches:
    master:
      - step:
          script:
            - git push -f https://heroku:$HEROKU_API_KEY@git.heroku.com/$HEROKU_APP_NAME.git $BITBUCKET_BRANCH

Hast du es geschafft? Ich kann immer noch nicht zu Heroku drängen :(
Alan Donizete

nvm, nur ein Tippfehler, den ich nicht bemerkt habe :( ... haha, danke
Alan Donizete

Dies funktioniert, aber stellen Sie sicher, dass Sie den API-Schlüssel von dashboard.heroku.com/account verwenden , nicht vonheroku auth:token
katzmopolitan


2

Ich fand diese Seite hilfreich

Installieren Sie den Heroku Toolbelt

Wenn Sie dies noch nicht getan haben, melden Sie sich bei Ihrem Heroku-Konto an und befolgen Sie die Anweisungen, um einen neuen öffentlichen SSH-Schlüssel zu erstellen.

$ heroku login

Erstellen Sie ein neues Git-Repository

Initialisieren Sie ein Git-Repository in einem neuen oder vorhandenen Verzeichnis

$ cd my-project/
$ git init
$ heroku git:remote -a PROJECTNAME

Stellen Sie Ihre Anwendung bereit

Übernehmen Sie Ihren Code in das Repository und stellen Sie ihn mithilfe von Git in Heroku bereit.

$ git add .
$ git commit -am "make it better"
$ git push heroku master

Vorhandenes Git-Repository

Fügen Sie für vorhandene Repositorys einfach die Heroku-Fernbedienung hinzu

$ heroku git:remote -a PROJECTNAME

2
Wie hängt das mit Bitbucket zusammen?
Laurent Michel
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.