'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 keys : add'를 시도했지만 여전히 동일한 결과가 나타납니다. 내 GitHub 계정에 대한 ssh 키가 이미 있습니다.


어떤 명령을 사용 했습니까? 이전에 어떤 단계를 수행 했습니까?
StickMaNX

1
git remote -v설정 한 리모컨을 보려면 출력 을 확인하십시오.
John Beynon

1
올바른 디렉토리에 있는지 확인하십시오. 그게 내 문제 야
tmthyjames

1
@tmthyjames-쾅쾅, 이것도 내 문제 였어, 고마워!
앤디 맥 컬러

답변:


435

Heroku 앱을 Git 리모컨으로 추가하려면을 실행해야합니다 heroku git:remote -a yourapp.

출처 : Git으로 배포


6
리포지토리를 복제 한 경우 솔루션입니다.
JGallardo

1
유효한 원격 장치를 추가 한 후 git push heroku master하위 디렉토리에서 배포하려고하면 실패합니다. heroku를 사용한 배포는 여기에 설명 된대로 유효한 package.json 및 .git 폴더가있는 루트 디렉토리에서 수행해야합니다.
Junior Mayhé

1
나는 yourapp여러분
이 헤 로쿠

49

루트 디렉토리에서 다음을 시도 할 수 있습니다.

// 프로젝트를 위해 자식을 초기화하고 변경 사항을 추가하고 커밋을 수행합니다.

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

// heroku 앱을 만들고 heroku로 푸시

heroku create
git push heroku master

현재 진행중인 위치가 확실하지 않습니다. heroku에 배포하기 위해 github이 필요하지 않으며 git 만 있습니다. 도움이 되었기를 바랍니다!


2
이것은 나를 위해 일했습니다. heroku create를 다시 실행해야했습니다. 어떤 이유로 처음으로 자식 리모컨을 만들지 않았습니다.
Joshua Dance

1
푸시하기 전에 'heroku git : remote -a yourapp'를 추가해야합니다
Jitendra

35

먼저, heroku에 로그인했는지 확인하십시오 :

heroku login 

자격 증명을 입력하십시오.

복제 된 자식 저장소를 새 컴퓨터에 사용할 때이 오류가 발생하는 것이 일반적입니다. heroku 자격 증명이 이미 컴퓨터에 있어도 복제 된 repo와 heroku간에 로컬 링크는 아직 없습니다. 이렇게하려면 복제 된 리포지토리의 루트 디렉토리로 이동하여 다음을 실행하십시오.

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

응용 프로그램 배포
코드를 리포지토리에 커밋하고 Git을 사용하여 Heroku에 배포하십시오.

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

기존 Git 리포지토리
기존 리포지토리의 경우 단순히 heroku 리모컨을 추가하십시오.

$ heroku git:remote -a appname

오류 : ---> 앱이 buildpack과 호환되지 않습니다 : https://codon-buildpacks.s3.amazonaws.com/buildpacks/heroku/python.tgz... 이해가 안됩니다. 어디가 잘못 되었습니까?
KingRider

@KingRider 배포중인 앱을 확인하십시오. python app을 배포하는 경우 Requirement.txt 파일에서 Python을 지정할 필요가 없습니다
MD Shahrouq

4

.git 폴더의 구성 파일을 확인하는 것이 좋습니다. heroku 매개 변수가 누락되면이 오류 heroku 매개 변수가 표시됩니다.

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

.git 폴더는 heroku에서 생성 한 앱의 로컬 컴퓨터 파일 디렉토리에 있어야합니다. 예 : C : \ Users \ You \ Your app.git

도움이 되었기를 바랍니다


3

내 문제는 앱을 복제하기 위해 heroku git 대신 git을 사용했다는 것입니다. 그런 다음 :

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

MyApp을 앱 이름으로 변경하십시오.

그런 다음 계속 진행할 수 있습니다.

git push heroku master

3

이 오류가 표시되면 이름이 Heroku 인 원격이 없기 때문입니다. Heroku create를 수행 할 때 git remote가 존재하지 않으면 자동으로 생성합니다 (git repo에 있다고 가정). 리모컨을 보려면 다음을 입력하십시오.

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 creategit push heroku master


1

훨씬 더 실수를 저지르는 같은 오류가 발생했습니다. 저는 소문자 대신 대문자 "H"로 Heroku에 입력하고있었습니다.

나는 이것이이 오류가 발생하는 모든 사람들을위한 해결책은 아니라는 것을 알고 있지만, 그것은 내 경우였습니다.


1

같은 오류가 발생하여 잘못된 디렉토리에있는 것으로 나타났습니다. 루트에 있는지 확인 heroku create하고 heroku git push master다시 실행하는 것은 너무 실수 입니다. 물론 git init, 당신은 이미 heroku 단계 전에 상기의 StickMaNX 답변에서 언급했듯이을 완료해야 합니다.



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

heroku가 codeanywhereIDE 에서 작동하도록하려는 사람들을 위해 :

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

0

관리자 권한으로 Windows 명령 프롬프트를 실행해야했습니다


답변 주셔서 감사합니다. 어쩌면 OP에 이것이 어떻게 수행되는지 설명 할 수 있습니까? 이 스레드의 향후 시청자에게도 가능한 한 자세한 답변을 제공하는 것이 항상 도움이됩니다.
niels

@niels는 예를 들어 시작 메뉴를 통해 cmd 아이콘을 찾습니다. 그런 다음 마우스 오른쪽 버튼을 클릭하고 관리자 권한으로 실행을 누릅니다.
Jesus Rodriguez

0

heroku가 이미 개발자 컴퓨터에 설치되어있는 경우 heroku에서 Ruby on rails 응용 프로그램 배포에 다음 명령이 제대로 작동합니다. #는 주석을 나타냅니다

  1. 헤 로쿠 로그인
  2. 헤 로쿠 만들기
  3. heroku keys : add # 이것은 반복 된 암호 입력을 피하기 위해 heroku에 로컬 머신 키를 추가합니다
  4. git push heroku 마스터
  5. heroku 이름 변경 new-application-name #rename 응용 프로그램을 자동 생성 된 heroku 이름 이외의 선호하는 이름으로 바꿉니다.



0

나는 여기에 모든 대답을 보았으며 누락 된 유일한 것은 다음 단계를 거친 후에입니다.

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

아래 명령을 실행해야합니다.

$ heroku git:remote -a <YourAppNameOnHeroku>

마지막으로 다음을 실행하십시오.

$ git push -f heroku <NameOfBranch>:master

< NameOfBranch >를 사용 했으므로 현재 마스터에 다른 브랜치에 있으면 여전히 오류가 발생하므로 마스터 사용 마스터에서 작업하는 경우 브랜치 이름을 거기에 넣으십시오.


0

heroku가 액세스 할 수있는 모든 앱 표시

heroku apps

그런 다음 앱이 존재하는지 확인하십시오.

 execute heroku git:remote -a yourapp_exist
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.