'heroku' tampaknya bukan repositori git


181

Ketika saya mencoba untuk mendorong aplikasi saya ke Heroku saya mendapat respons ini:

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.

Saya sudah mencoba 'kunci heroku: tambahkan' tetapi masih muncul dengan hasil yang sama. Saya sudah memiliki kunci ssh untuk akun GitHub saya.


perintah apa yang Anda gunakan untuk mendorong? dan langkah apa yang Anda lakukan sebelumnya?
StickMaNX

1
lihat output git remote -vuntuk melihat remote apa yang telah Anda siapkan.
John Beynon

1
pastikan Anda berada di direktori yang benar. itu masalah saya.
tmthyjames

1
@tmthyjames - ayolah, ini juga masalah saya, terima kasih!
andy mccullough

Jawaban:


432

Untuk menambahkan aplikasi Heroku sebagai remote Git, Anda perlu menjalankan heroku git:remote -a yourapp.

Sumber: Menyebarkan dengan Git


6
Ini solusinya jika Anda mengkloning repo.
JGallardo

1
Setelah menambahkan jarak jauh yang valid, pemberitahuan yang git push heroku masterakan gagal jika Anda mencoba untuk menyebarkan dari subdirektori. Penyebaran dengan heroku harus dilakukan dari direktori root dengan folder package.json dan .git yang valid, seperti yang diceritakan di sini stackoverflow.com/questions/38658038/…
Junior Mayhé

1
Saya menambahkan bahwa yourappmaksud Anda nama aplikasi heroku, yang mungkin tidak selalu cocok dengan nama aplikasi Anda di git atau secara lokal, dll.
Lee McAlilly

49

Anda dapat mencoba yang berikut ini di direktori root Anda:

// inisialisasi git untuk proyek Anda, tambahkan perubahan dan lakukan komit

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

// buat aplikasi heroku dan dorong ke heroku

heroku create
git push heroku master

Tidak yakin di mana Anda berada dalam proses. Anda juga tidak perlu github untuk menggunakan heroku, cukup git. Semoga ini membantu!


2
Ini berhasil untuk saya. Hanya perlu menjalankan heroku buat lagi. Untuk beberapa alasan, pertama kali tidak membuat git remote.
Joshua Dance

1
Sebelum mendorong Anda perlu menambahkan 'heroku git: remote -a yourapp'
Jitendra

35

Pertama, pastikan Anda masuk ke heroku:

heroku login 

Masukkan kredensial Anda.

Adalah umum untuk mendapatkan kesalahan ini saat menggunakan repo git hasil kloning ke mesin baru. Bahkan jika kredensial heroku Anda sudah ada di mesin, belum ada tautan antara repo yang dikloning dan heroku secara lokal. Untuk melakukan ini, cd ke direktori root dari repo kloning dan jalankan

heroku git:remote -a yourapp

1
Hanya catatan untuk pemula, di yourappatas adalah nama Aplikasi Anda di bawah pengaturan di dasbor Heroku
nkhil

9

Berikut artikel resmi Heroku :

Inisialisasi GIT

$ cd myapp
$ git init

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

Kemudian buat (inisialisasi) aplikasi heroku dengan:

$ heroku create YourAppName

Terakhir tambahkan git remote:

$ heroku git:remote -a YourAppName

Sekarang Anda dapat menggunakan aplikasi dengan aman dengan:

$ git push heroku master

Anda harus menunggu beberapa saat dan melihat apakah Anda tidak mendapatkan kesalahan / gangguan pada konsol saat penggelaran. Untuk detailnya lihat artikel heroku .


7

Ikuti langkah-langkah ini:

$ heroku login

Buat repositori Git baru
Menginisialisasi repositori git di direktori baru atau yang sudah ada

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

Menyebarkan aplikasi Anda
Komit kode Anda ke repositori dan sebarkan ke Heroku menggunakan Git.

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

Repositori Git yang Ada
Untuk repositori yang ada, cukup tambahkan heroku remote

$ heroku git:remote -a appname

Kesalahan: ---> Aplikasi tidak kompatibel dengan buildpack: https://codon-buildpacks.s3.amazonaws.com/buildpacks/heroku/python.tgz... saya tidak mengerti, Di mana ada yang salah?
KingRider

@ KingRider Periksa aplikasi mana yang Anda gunakan. JIKA Anda menggunakan aplikasi python, tidak perlu menentukan Python di file Requirement.txt
MD Shahrouq

4

Mungkin patut memeriksa file konfigurasi di folder .git. Jika parameter heroku hilang maka Anda akan mendapatkan kesalahan ini heroku param

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

folder .git harus berada di direktori file komputer lokal untuk aplikasi yang Anda buat di heroku. mis. C: \ Users \ You \ Your app.git

Semoga ini membantu


3

Masalah saya adalah saya menggunakan git (bukan heroku git) untuk mengkloning aplikasi. Kemudian saya harus:

git remote add heroku git@heroku.com:MyApp.git

Ingatlah untuk mengubah MyApp ke nama aplikasi Anda.

Lalu saya bisa melanjutkan:

git push heroku master

3

Jika kesalahan ini muncul, itu karena tidak ada remote bernama Heroku. Ketika Anda membuat Heroku, jika git remote belum ada, kami secara otomatis membuatnya (dengan asumsi Anda berada dalam git repo). Untuk melihat jenis remote Anda, ketik:

" git remote -v" # Untuk aplikasi bernama 'appname' Anda akan melihat yang berikut:

$ git remote -v
heroku git@heroku.com:appname.git (fetch)
heroku git@heroku.com:appname.git (push)

Jika Anda melihat jarak jauh untuk aplikasi Anda, Anda bisa " git push master" dan mengganti dengan nama jarak jauh yang sebenarnya.

Jika tidak ada, Anda dapat menambahkan remote dengan perintah berikut:

git remote add heroku git@heroku.com:appname.git

Jika Anda sudah menambahkan remote yang disebut Heroku, Anda mungkin mendapatkan kesalahan seperti ini:

fatal: remote heroku already exists.

jadi, kemudian hapus remote yang ada dan tambahkan lagi dengan perintah di atas:

git remote rm heroku

Semoga ini membantu…


2

Bagi saya jawabannya adalah dengan cd ke direktori root aplikasi sebelum menjalankan heroku createataugit push heroku master


1

Saya mengalami kesalahan yang sama membuat kesalahan pemula yang jauh lebih banyak: Saya mengetik Heroku dengan huruf besar "H," bukan huruf kecil.

Saya menyadari bahwa itu jelas bukan solusi bagi semua orang yang mengalami kesalahan ini, tetapi itu dalam kasus saya.


1

Saya mendapat kesalahan yang sama dan ternyata saya berada di direktori yang salah. Ini kesalahan sederhana untuk melakukan pengecekan sehingga Anda berada di root dan kemudian jalankan heroku createdan heroku git push masterlagi. Tentu saja Anda harus melakukan git init, seperti yang disebutkan dalam jawaban StickMaNX di atas, sudah sebelum langkah heroku.



1

Anda lupa menautkan nama aplikasi Anda ke heroku Anda. Itu kesalahan yang sangat umum. jika aplikasi Anda tidak dibuat, maka gunakan:

heroku create (optional app name)

lain:

git add .
git commit -m "heroku commit"

heroku git:remote -a YOUR_APP_NAME

git push heroku master

0

Bagi mereka yang mencoba membuat heroku bekerja di codeanywhereIDE:

heroku login
git remote add heroku git@heroku.com:MyApp.git
git push heroku

0

Saya harus menjalankan Prompt Perintah Windows dengan hak istimewa Administrator


Terima kasih atas jawaban anda. Mungkin Anda bisa menjelaskan kepada OP bagaimana hal ini dilakukan? Itu selalu membantu, juga untuk pemirsa masa depan dari utas ini, untuk memberikan jawaban sedetail mungkin.
niels

@ elemen hanya menemukan ikon cmd, melalui menu mulai misalnya. Kemudian klik kanan dan tekan Run as Administrator
Jesus Rodriguez

0

Perintah-perintah berikut ini akan bekerja dengan baik untuk penyebaran aplikasi rel pada Ruby pada heroku jika heroku sudah diinstal pada mesin pengembang. # menunjukkan komentar

  1. login heroku
  2. heroku buat
  3. kunci heroku: tambahkan #ini menambahkan kunci mesin lokal ke heroku untuk menghindari entri kata sandi berulang
  4. git dorong master heroku
  5. heroku mengubah nama aplikasi-nama-nama # nama aplikasi baru ke nama yang dipilih selain nama heroku yang dihasilkan secara otomatis



0

Saya telah melihat semua jawaban di sini dan satu-satunya hal yang hilang adalah setelah melalui langkah-langkah ini:

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

Anda harus menjalankan perintah di bawah ini:

$ heroku git:remote -a <YourAppNameOnHeroku>

Dan terakhir, jalankan ini:

$ git push -f heroku <NameOfBranch>:master

Perhatikan saya menggunakan < NameOfBranch > karena jika Anda saat ini berada di cabang yang berbeda untuk dikuasai, masih akan melempar kesalahan, jadi Jika Anda bekerja di master gunakan master, selain itu letakkan nama cabang di sana.


0

tampilkan semua aplikasi yang dapat diakses oleh heroku

heroku apps

Dan periksa aplikasi Anda ada saat itu

 execute heroku git:remote -a yourapp_exist
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.