'heroku' ดูเหมือนจะไม่เป็นที่เก็บคอมไพล์


181

เมื่อฉันพยายามที่จะผลักดันแอปของฉันไปที่ Heroku ฉันได้รับการตอบสนองนี้:

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.

ฉันได้ลองใช้ 'คีย์ heroku: เพิ่ม' แต่ยังคงเกิดขึ้นกับผลลัพธ์เดียวกัน ฉันมีรหัส ssh สำหรับบัญชี GitHub ของฉันแล้ว


คุณใช้คำสั่งแบบใดในการพุช และขั้นตอนใดที่คุณเคยทำมาก่อน
StickMaNX

1
ดูผลลัพธ์ของgit remote -vเพื่อดูว่ารีโมทที่คุณตั้งไว้แล้ว
จอห์น Beynon

1
ตรวจสอบให้แน่ใจว่าคุณอยู่ในไดเรกทอรีที่ถูกต้อง นั่นคือปัญหาของฉัน
tmthyjames

1
@tmthyjames - เอาละนี่เป็นปัญหาของฉันเหมือนกันขอบคุณ!
mccullough andy

คำตอบ:


435

ในการเพิ่มแอปพลิเค Heroku เป็น Git heroku git:remote -a yourappระยะไกลคุณจะต้องดำเนินการ

ที่มา: การปรับใช้กับ Git


6
นี่คือทางออกถ้าคุณโคลน repo
JGallardo

1
หลังจากเพิ่มรีโมตที่ถูกต้องให้สังเกตว่าgit push heroku masterจะล้มเหลวหากคุณพยายามปรับใช้จากไดเรกทอรีย่อย ปรับใช้กับ Heroku จะต้องทำจากไดเรกทอรีรากกับ package.json ที่ถูกต้องและโฟลเดอร์ .git ที่บอกนี่stackoverflow.com/questions/38658038/...
จูเนียร์Mayhé

1
ฉันจะเพิ่มมันโดยyourappคุณหมายถึงชื่อแอป heroku ซึ่งอาจไม่ตรงกับชื่อแอพของคุณในคอมไพล์หรือในพื้นที่ ฯลฯ
Lee McAlilly

49

คุณสามารถลองต่อไปนี้ในไดเรกทอรีรากของคุณ:

// เริ่มต้นคอมไพล์สำหรับโครงการของคุณเพิ่มการเปลี่ยนแปลงและดำเนินการยอมรับ

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

// สร้างแอป heroku และกดไปที่ heroku

heroku create
git push heroku master

ไม่แน่ใจว่าคุณอยู่ที่ไหนในกระบวนการ คุณไม่จำเป็นต้องมี GitHub เพื่อนำไปใช้กับ heroku เพียงแค่คอมไพล์ หวังว่านี่จะช่วยได้!


2
สิ่งนี้ใช้ได้สำหรับฉัน เพียงแค่ต้องการเรียกใช้ heroku สร้างอีกครั้ง ด้วยเหตุผลบางอย่างในครั้งแรกที่ไม่ได้สร้างรีโมตคอมไพล์
Joshua Dance

1
ก่อนกดคุณต้องเพิ่ม 'heroku git: remote -a yourapp'
Jitendra

35

ก่อนอื่นตรวจสอบให้แน่ใจว่าคุณได้ลงชื่อเข้าใช้ heroku:

heroku login 

ป้อนข้อมูลรับรองของคุณ

เป็นเรื่องปกติที่จะได้รับข้อผิดพลาดนี้เมื่อใช้ repo git ที่ลอกแบบมาจากเครื่องใหม่ แม้ว่าข้อมูลประจำตัวของ heroku ของคุณอยู่ในเครื่องแล้วก็ยังไม่มีการเชื่อมโยงระหว่าง repo ที่ถูกโคลนและ heroku ในเครื่อง ในการทำเช่นนี้ให้ใส่ซีดีลงในรูต dir ของ repo ที่โคลนและเรียกใช้

heroku git:remote -a yourapp

1
เพิ่งทราบสำหรับผู้เริ่มต้นyourappข้างต้นเป็นชื่อแอปของคุณภายใต้การตั้งค่าในแผงควบคุม Heroku
nkhil

9

ติดตามบทความ Heroku อย่างเป็นทางการ :

เริ่มต้น GIT

$ cd myapp
$ git init

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

จากนั้นสร้างแอป heroku (เตรียมใช้งาน) ด้วย:

$ heroku create YourAppName

สุดท้ายเพิ่ม git remote:

$ heroku git:remote -a YourAppName

ตอนนี้คุณสามารถปรับใช้แอพของคุณอย่างปลอดภัยด้วย:

$ git push heroku master

คุณควรรอสักครู่และดูว่าคุณไม่ได้รับข้อผิดพลาด / ขัดจังหวะบนคอนโซลขณะใช้งานหรือไม่ สำหรับรายละเอียดดูที่บทความ Heroku


7

ทำตามขั้นตอนนี้:

$ heroku login

สร้างที่เก็บ Git ใหม่
เริ่มต้นพื้นที่เก็บข้อมูล Git ในไดเรกทอรีใหม่หรือที่มีอยู่

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

ปรับใช้แอปพลิเคชันของคุณ
ยอมรับรหัสของคุณไปยังที่เก็บและนำไปใช้กับ Heroku โดยใช้ Git

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

ที่เก็บ Git ที่มีอยู่
สำหรับที่เก็บที่มีอยู่เพียงเพิ่ม heroku remote

$ heroku git:remote -a appname

ข้อผิดพลาด: ---> แอพไม่สามารถใช้งานร่วมกับ buildpack: https://codon-buildpacks.s3.amazonaws.com/buildpacks/heroku/python.tgz... ฉันไม่เข้าใจผิดผิดหรือเปล่า?
KingRider

@KingRider ตรวจสอบแอพที่คุณกำลังปรับใช้ หากคุณปรับใช้แอพ python ไม่จำเป็นต้องระบุ Python ในไฟล์ Requirement.txt
MD Shahrouq

4

อาจคุ้มค่าที่จะตรวจสอบไฟล์กำหนดค่าในโฟลเดอร์. git หากพารามิเตอร์ heroku หายไปคุณจะได้รับข้อผิดพลาดนี้ heroku param

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

โฟลเดอร์. git ควรอยู่ในไดเรกทอรีไฟล์คอมพิวเตอร์ในท้องถิ่นสำหรับแอพที่คุณสร้างขึ้นใน heroku เช่น C: \ Users \ You \ app.git ของคุณ

หวังว่านี่จะช่วยได้


3

ปัญหาของฉันคือฉันใช้ git (แทน heroku git) เพื่อโคลนแอพ จากนั้นฉันก็ต้อง:

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

อย่าลืมเปลี่ยน MyApp เป็นชื่อแอปของคุณ

จากนั้นฉันสามารถดำเนินการต่อ:

git push heroku master

3

หากข้อผิดพลาดนี้ปรากฏขึ้นอาจเป็นเพราะไม่มีชื่อระยะไกล Heroku เมื่อคุณสร้าง Heroku ถ้าไม่มีรีโมท git เราจะสร้างขึ้นใหม่โดยอัตโนมัติ (สมมติว่าคุณอยู่ใน repo git) วิธีดูประเภทรีโมตของคุณใน:

git remote -v” # สำหรับแอปที่ชื่อว่า 'appname' คุณจะเห็นสิ่งต่อไปนี้:

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

หากคุณเห็นรีโมตสำหรับแอปคุณสามารถเพียงแค่“ git push master” และแทนที่ด้วยชื่อรีโมตจริง

หากไม่มีคุณสามารถเพิ่มรีโมทด้วยคำสั่งต่อไปนี้:

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

หากคุณเพิ่มรีโมตชื่อ Heroku แล้วคุณอาจได้รับข้อผิดพลาดดังนี้:

fatal: remote heroku already exists.

ดังนั้นจากนั้นลบรีโมตที่มีอยู่และเพิ่มอีกครั้งด้วยคำสั่งด้านบน:

git remote rm heroku

หวังว่านี่จะช่วย ...


2

สำหรับฉันคำตอบคือการ cd ลงในไดเรกทอรีรากของแอพก่อนเรียกใช้heroku createหรือgit push heroku master


1

ฉันพบข้อผิดพลาดเดียวกันทำให้เกิดข้อผิดพลาดสามเณรมากขึ้น: ฉันพิมพ์ใน Heroku ด้วยทุนจดทะเบียน "H" แทนที่จะเป็นตัวพิมพ์เล็ก

ฉันรู้ว่านั่นไม่ใช่วิธีแก้ปัญหาสำหรับทุกคนที่พบข้อผิดพลาดนี้ แต่ในกรณีของฉัน


1

ฉันพบข้อผิดพลาดเดียวกันและกลับกลายเป็นว่าฉันทำผิดไดเรกทอรี มันเป็นความผิดพลาดง่าย ๆ ที่จะทำให้การตรวจสอบอีกครั้งเพื่อให้คุณอยู่ในรากและเรียกใช้แล้วheroku createและheroku git push masterอีกครั้ง แน่นอนคุณต้องทำgit initตามที่ระบุไว้ในคำตอบของ StickMaNX ด้านบนก่อนหน้า heroku ขั้นตอน



1

คุณลืมที่จะเชื่อมโยงชื่อแอปของคุณไปยัง heroku มันเป็นความผิดพลาดทั่วไป หากแอปของคุณไม่ได้ถูกสร้างขึ้นให้ใช้:

heroku create (optional app name)

อื่น:

git add .
git commit -m "heroku commit"

heroku git:remote -a YOUR_APP_NAME

git push heroku master


0

ฉันต้องเรียกใช้พรอมต์คำสั่งของ Windows ด้วยสิทธิ์ของผู้ดูแลระบบ


ขอบคุณสำหรับคำตอบ. บางทีคุณสามารถอธิบายให้ OP ทราบถึงวิธีการนี้ได้หรือไม่ มันจะช่วยเสมอสำหรับผู้ดูในอนาคตของกระทู้นี้เพื่อให้คำตอบอย่างละเอียดที่สุดเท่าที่จะทำได้
niels

@ Niels เพียงค้นหาไอคอน cmd ผ่านทางเมนูเริ่มเช่น จากนั้นคลิกขวาแล้วกดเรียกใช้ในฐานะผู้ดูแลระบบ
Jesus Rodriguez

0

คำสั่งต่อไปนี้จะทำงานได้ดีสำหรับ ruby ​​ในการปรับใช้แอปพลิเคชันทางรถไฟใน heroku ถ้า heroku ได้รับการติดตั้งบนเครื่องของนักพัฒนาแล้ว # หมายถึงความคิดเห็น

  1. เข้าสู่ระบบ heroku
  2. heroku สร้าง
  3. คีย์ heroku: เพิ่ม # สิ่งนี้จะเพิ่มรหัสเครื่องท้องถิ่นลงใน heroku เพื่อหลีกเลี่ยงการป้อนรหัสผ่านซ้ำ ๆ
  4. git push heroku master
  5. heroku เปลี่ยนชื่อแอปพลิเคชั่นใหม่ #rename เป็นชื่อที่ต้องการนอกเหนือจากชื่อ heroku ที่สร้างขึ้นอัตโนมัติ


0

ฉันมีปัญหาเดียวกัน แต่ต่อมาฉันพบว่าฉันลืมสร้างแอพก่อนที่จะนำไปใช้งาน ลองทำตามขั้นตอนต่อไปนี้ในเทอร์มินัล

heroku login
heroku create

ฉันแค่เรียนรู้ Heroku และมักจะลืมขั้นตอนดังนั้นฉันจึงเขียนบทความเกี่ยวกับเรื่องนี้ คุณสามารถค้นหาได้ที่นี่: https://medium.com/@saurav.panthee/deploy-flask-app-to-heroku-under-3-minutes-2ec1c0bc403a


0

ฉันได้เห็นคำตอบทั้งหมดที่นี่และสิ่งเดียวที่ขาดหายไปคือหลังจากผ่านขั้นตอนเหล่านี้:

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

คุณควรรันคำสั่งด้านล่าง:

$ heroku git:remote -a <YourAppNameOnHeroku>

และสุดท้ายเรียกใช้สิ่งนี้:

$ git push -f heroku <NameOfBranch>:master

แจ้งให้ทราบล่วงหน้าฉันใช้ < NameOfBranch > เพราะถ้าคุณอยู่ในสาขาที่แตกต่างกันเพื่อต้นแบบมันจะยังคงโยนข้อผิดพลาดดังนั้นหากคุณกำลังทำงานใน master use master มิฉะนั้นให้ใส่ชื่อของสาขาที่นั่น


0

แสดงแอพทั้งหมดที่ heroku สามารถเข้าถึงได้ด้วย

heroku apps

และตรวจสอบแอพที่คุณมีอยู่แล้ว

 execute heroku git:remote -a yourapp_exist
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.