„heroku” nie wydaje się być repozytorium git

181

Kiedy próbuję przekazać moją aplikację do Heroku, otrzymuję następującą odpowiedź:

fatal: 'heroku' does not appear to be a git repository
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Wypróbowałem „klucze heroku: dodaj”, ale nadal otrzymuję ten sam wynik. Mam już klucz SSH do mojego konta GitHub.

Tim
źródło
jakiego polecenia użyłeś do pchania? i jakie kroki wykonałeś wcześniej?
StickMaNX
1
spójrz na wyjście programu, git remote -vaby zobaczyć, jakie piloty zostały skonfigurowane.
John Beynon
1
upewnij się, że jesteś we właściwym katalogu. to był mój problem.
tmthyjames
1
@tmthyjames - bang, to też był mój problem, dziękuję!
andy mccullough

Odpowiedzi:

434

Aby dodać aplikację Heroku jako pilota Git, musisz wykonać heroku git:remote -a yourapp.

Źródło: wdrażanie za pomocą Git


źródło
6
To jest rozwiązanie, jeśli sklonowałeś repozytorium.
JGallardo,
1
Po dodaniu prawidłowego pilota zwróć uwagę, że git push heroku masternie powiedzie się, jeśli próbujesz wdrożyć z podkatalogu. Wdrożenie za pomocą heroku musi być wykonane z katalogu głównego z prawidłowymi folderami package.json i .git, jak powiedziano tutaj stackoverflow.com/questions/38658038/ ...
Junior Mayhé
1
Dodałbym, że przez yourappciebie rozumiem nazwę aplikacji heroku, która może nie zawsze pasować do nazwy twojej aplikacji w git lub lokalnie itp.
Lee McAlilly
49

Możesz spróbować wykonać następujące czynności w swoim katalogu głównym:

// zainicjuj git dla swojego projektu, dodaj zmiany i wykonaj zatwierdzenie

git init
git add .
git commit -m "first commit"

// utwórz aplikację heroku i przejdź do heroku

heroku create
git push heroku master

Nie wiem, na jakim etapie procesu się znajdujesz. Nie potrzebujesz też github do wdrożenia na heroku, po prostu git. Mam nadzieję że to pomoże!

StickMaNX
źródło
2
To zadziałało dla mnie. Wystarczyło ponownie uruchomić heroku create. Z jakiegoś powodu po raz pierwszy nie utworzono pilota git.
Joshua Dance
1
Przed naciśnięciem należy dodać „heroku git: remote -a yourapp”
Jitendra
35

Najpierw upewnij się, że jesteś zalogowany do heroku:

heroku login 

Wprowadź swoje poświadczenia.

Ten błąd często pojawia się podczas używania sklonowanego repozytorium git na nowej maszynie. Nawet jeśli twoje poświadczenia heroku są już na komputerze, nie ma jeszcze powiązania między sklonowanym repozytorium a heroku lokalnie. Aby to zrobić, przejdź do katalogu głównego sklonowanego repozytorium i uruchom

heroku git:remote -a yourapp
mepler
źródło
1
Uwaga dla początkujących, yourapppowyżej jest nazwa Twojej aplikacji w ustawieniach na pulpicie nawigacyjnym
Heroku
9

Zgodnie z oficjalnym artykułem Heroku :

Zainicjuj GIT

$ cd myapp
$ git init

$ git add .
$ git commit -m "my first commit"

Następnie utwórz (zainicjuj) aplikację Heroku za pomocą:

$ heroku create YourAppName

Na koniec dodaj pilota git:

$ heroku git:remote -a YourAppName

Teraz możesz bezpiecznie wdrożyć swoją aplikację za pomocą:

$ git push heroku master

Powinieneś poczekać chwilę i zobaczyć, czy nie otrzymujesz żadnego błędu / przerwania na konsoli podczas wdrażania. Po szczegóły zajrzyj do artykułu heroku .

RegarBoy
źródło
7

Wykonaj następujące kroki:

$ heroku login

Utwórz nowe repozytorium Git
Zainicjuj repozytorium git w nowym lub istniejącym katalogu

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

Wdróż swoją aplikację
Zatwierdź swój kod w repozytorium i wdróż go w Heroku za pomocą Git.

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

Istniejące repozytorium Git
W przypadku istniejących repozytoriów wystarczy dodać pilota heroku

$ heroku git:remote -a appname
MD Shahrouq
źródło
Błąd: ---> Aplikacja nie jest kompatybilna z buildpack: https://codon-buildpacks.s3.amazonaws.com/buildpacks/heroku/python.tgz... nie rozumiem, gdzie jest źle?
KingRider
@KingRider Sprawdź, którą aplikację wdrażasz. JEŚLI wdrażasz aplikację w języku Python, nie ma potrzeby określania
języka
4

Może warto sprawdzić plik konfiguracyjny w folderze .git. Jeśli brakuje parametrów heroku, otrzymasz ten błąd param heroku

[remote "heroku"]
    url = [email protected]:`[Your heroku app].git
    fetch = +refs/heads/*:refs/remotes/heroku/*

folder .git powinien znajdować się w katalogu plików na komputerze lokalnym dla aplikacji utworzonej w heroku. np. C: \ Users \ You \ Your app.git

Mam nadzieję że to pomoże

Beauson45
źródło
3

Mój problem polegał na tym, że użyłem git (zamiast heroku git) do sklonowania aplikacji. Wtedy musiałem:

git remote add heroku [email protected]:MyApp.git

Pamiętaj, aby zmienić MyApp na nazwę swojej aplikacji.

Wtedy mogłem kontynuować:

git push heroku master
douglaslps
źródło
3

Jeśli pojawia się ten błąd, to dlatego, że nie ma pilota o nazwie Heroku. Kiedy robisz tworzenie Heroku, jeśli pilot git jeszcze nie istnieje, tworzymy go automatycznie (zakładając, że jesteś w repozytorium git). Aby wyświetlić swoje piloty, wpisz:

git remote -v”. # W przypadku aplikacji o nazwie „nazwa_aplikacji” zobaczysz:

$ git remote -v
heroku [email protected]:appname.git (fetch)
heroku [email protected]:appname.git (push)

Jeśli widzisz pilota do swojej aplikacji, możesz po prostu „ git push master” i zastąpić go rzeczywistą nazwą pilota.

Jeśli go brakuje, możesz dodać pilota za pomocą następującego polecenia:

git remote add heroku [email protected]:appname.git

Jeśli dodałeś już pilota o nazwie Heroku, możesz otrzymać następujący błąd:

fatal: remote heroku already exists.

więc usuń istniejącego pilota i dodaj go ponownie za pomocą powyższego polecenia:

git remote rm heroku

Mam nadzieję że to pomoże…

Avanish Kumar
źródło
2

Dla mnie odpowiedzią było przejście do katalogu głównego aplikacji przed uruchomieniem heroku createlubgit push heroku master

j8d
źródło
1

Napotkałem ten sam błąd, popełniając znacznie bardziej początkujący błąd: pisałem w Heroku z dużej litery „H” zamiast małej litery.

Zdaję sobie sprawę, że to z pewnością nie jest rozwiązanie dla każdego, kto napotka ten błąd, ale tak było w moim przypadku.

Gerard Dawson
źródło
1

Otrzymałem ten sam błąd i okazało się, że jestem w złym katalogu. To prosty błąd, aby tak dokładnie sprawdzić, czy jesteś w katalogu głównym, a następnie uruchomić heroku createi heroku git push masterjeszcze raz. Oczywiście musieliście to zrobić git init, jak wspomniano w powyższej odpowiedzi StickMaNX, jeszcze przed krokami Heroku.

mikeym
źródło
1

Uruchom to

heroku create

przed przekazaniem kodu.

niranjanbajgai
źródło
1

Zapomniałeś połączyć nazwę swojej aplikacji z Heroku. To bardzo częsty błąd. jeśli Twoja aplikacja nie została utworzona, użyj:

heroku create (optional app name)

jeszcze:

git add .
git commit -m "heroku commit"

heroku git:remote -a YOUR_APP_NAME

git push heroku master
Abhimanyu Dwivedi
źródło
0

Dla tych, którzy próbują zmusić heroku do pracy w codeanywhereIDE:

heroku login
git remote add heroku [email protected]:MyApp.git
git push heroku
Timmy Von Heiss
źródło
0

Musiałem uruchomić wiersz polecenia systemu Windows z uprawnieniami administratora

Yash Pakala
źródło
Dziękuję za odpowiedź. Może mógłbyś wyjaśnić OP, jak to się robi? Zawsze pomaga, także przyszłym widzom tego wątku, udzielanie jak najbardziej szczegółowych odpowiedzi.
niels
@niels po prostu znajdź ikonę cmd, na przykład w menu Start. Następnie kliknij prawym przyciskiem myszy i naciśnij Uruchom jako administrator
Jesus Rodriguez
0

Następujące polecenia będą dobrze działać podczas wdrażania aplikacji Ruby on Rails na heroku, jeśli heroku jest już zainstalowane na komputerze dewelopera. # oznacza komentarz

  1. logowanie heroku
  2. heroku create
  3. Klawisze heroku: dodaj # to dodaje klucze komputerów lokalnych do heroku, aby uniknąć ponownego wprowadzania hasła
  4. git push heroku master
  5. heroku zmień nazwę new-application-name #rename aplikacji na preferowaną nazwę inną niż automatycznie wygenerowana nazwa heroku
Hamfri
źródło
0

W moim przypadku byłem już zalogowany i właśnie wykonałem egzekucję git push.

Nazar Medeiros
źródło
0

Widziałem tutaj wszystkie odpowiedzi, a jedyne, czego brakuje, to wykonanie tych czynności:

$ git add .
$ git commit -m "first heroku commit"

Powinieneś uruchomić poniższe polecenie:

$ heroku git:remote -a <YourAppNameOnHeroku>

Na koniec uruchom to:

$ git push -f heroku <NameOfBranch>:master

Zauważ, że użyłem < NameOfBranch >, ponieważ jeśli jesteś obecnie w innej gałęzi do masterowania, nadal generowałoby to błędy, więc jeśli pracujesz w master, użyj master, w przeciwnym razie umieść tam nazwę gałęzi.

Kingston Fortune
źródło
0

pokaż wszystkie aplikacje, do których heroku ma dostęp z

heroku apps

I sprawdź, czy aplikacja istnieje

 execute heroku git:remote -a yourapp_exist
Beowulfdgo
źródło