폴더를 기존 Heroku 앱과 연결하는 방법


815

GitHub에 기존 Rails 앱이 있고 Heroku에 배포되었습니다. 새 개발 머신을 설정하려고하고 GitHub 리포지토리에서 프로젝트를 복제했습니다. 그러나이 폴더를 Heroku에 연결하는 방법에 대해서는 혼란 스럽습니다. 원래는 heroku create명령을 사용 했지만 이번에는 다른 Heroku 인스턴스를 생성하므로 이번에는 그렇게하고 싶지 않습니다.

답변:


1243

Herokuherokugit remote를 기반으로 프로젝트를 연결합니다 (그리고 다른 옵션은 아래 업데이트를 참조하십시오). 현재 저장소에서 Heroku 리모컨을 리모컨으로 추가하려면 다음 명령을 사용하십시오.

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

여기서 projectHeroku 프로젝트의 이름입니다 ( project.heroku.com하위 도메인 과 동일 ). 이렇게하면 heroku xxxx명령을 사용하고 ( Heroku Toolbelt가 설치되어 있다고 가정 ) 평소와 같이를 통해 Heroku로 푸시 할 수 있습니다 git push heroku master. 명령 줄 도구를 사용하는 경우 다음과 같이 입력 할 수 있습니다.

heroku git:remote -a project

여기서 다시 projectHeroku 프로젝트의 이름입니다 (감사합니다, 대령 패닉 ). 전달하여 Git 리모컨의 이름을 원하는대로 지정할 수 있습니다 -r remote_name.

[최신 정보]

주석에서 Ben이 언급했듯이 herokugem 명령이 작동하기 위해 리모콘의 이름을 지정할 필요가 없습니다 . 소스를 확인했는데 다음 과 같이 작동합니다.

  1. --app옵션 (예 :)을 통해 앱 이름을 지정하면 heroku info --app myapp해당 앱이 사용됩니다.
  2. 옵션 (예 :)을 통해 Git 원격 이름 을 지정하면 해당 Git 원격과 연결된 앱이 사용됩니다.--remoteheroku info --remote production
  3. 옵션을 지정하지 않고 heroku.remoteGit 구성 파일에서 설정 한 경우, 해당 리모컨과 연결된 앱을 사용합니다 (예 : 기본 리모컨을 git config heroku.remote production리포지토리에서 "프로덕션"사용으로 설정 하고 Heroku가 git config heroku.remote값을 읽도록 실행 됨) 이 설정의
  4. 옵션을 지정하지 않으면 gem은 .git/config파일 에서 구성을 찾지 않으며 , gem은 URL에 "heroku.com"이있는 Git 리모콘에서 하나의 리모콘 만 찾습니다. 해당 리모콘을 사용합니다.
  5. 이들 중 어느 것도 작동하지 않으면 명령에 전달하라는 오류가 발생 --app합니다.

위의 "소스"에 대한 링크가 작동하지 않습니다. 어쩌면이 페이지를보십시오 : devcenter.heroku.com/articles/using-the-cli- 문서가 충분하지 않다고 생각합니다.
Purplejacket

1
heroku git:remote방법 을 사용하려고 시도하는 경우 heroku toolbelt cli를 사용 중인지, 시스템에 heroku gem이 아직 설치되어 있지 않은지 확인하십시오 (오래된 gem에서는 작동하지 않는 것 같습니다).
Pierre-Adrien Buisson

3
또한 여러 heroku 지점의 경우 $ git config heroku.remote <appname>기본 앱을 설정하여 해당 앱의 터미널 명령을 사용할 수 있습니다.
Sheharyar

1
사용하여 HTTP 즉 경우 heroku login원격 다음의 형식은https://git.heroku.com/project-name.git
최대 pleaner

1
참고 : Heroku가 이제 프로젝트 개요에 대해 설명 탐색을에 dashboard.heroku.com , 다음 앱을 클릭하고 "배포"탭으로 전환 및 배포 방법 (기본적으로 선택) "Heroku가의 자식"을 선택합니다. 그런 다음 기존 폴더 / git을 Heroku와 연결하는 방법에 대한 지침을받습니다.
편리

230

에게 Heroku CLI는 이것에 대한 쉬운 바로 가기가 있습니다. 'falling-wind-1624'라는 앱의 경우 :

$ heroku git:remote -a falling-wind-1624
Git remote heroku added.

https://devcenter.heroku.com/articles/git#creating-a-heroku-remote를 참조 하십시오


1
! Resource not found
Green

1
당신은 당신이 통과하여 원하는 원격 아무것도의 이름을 지정할 수 있습니다-r other_remote_name
MasterScrat

2
Heroku 앱을 GitHub에 직접 연결 한 경우에도 여전히 올바른 방법입니다. "원점"리모컨을 덮어 ​​쓰지 않습니다. 대신 "heroku"리모컨을 만듭니다.
Seth

144

전에 heroku를 설정하지 않은 컴퓨터를 사용하는 경우 잊지 마십시오.

heroku keys:add

또는 리포지토리로 밀거나 당길 수 없습니다.


3
아, 네! 그것은 나에게도 도움이되었습니다. 우리가 기본을 시작한 다음 "heroku"를 "스테이징"과 "프로덕션"으로 분기하는 앱을 가지고있었습니다. 그래서 나는 git remote add staging git@staging.xx:yy.git했고 git remote add production git@production.xx:yy.git-충분하지 않았습니다. git push staging master"또는 프로덕션"을 시도 할 때 "권한이 거부되었습니다 (공개 키). 치명적 : 원격 끝이 예기치 않게 끊어졌습니다"라는 메시지가 나타납니다. 그 오류 heroku keys:add를 고친 것은 고티가 언급 한 것과 관련이있었습니다.
Purplejacket

8

기존 앱을위한 새로운 배포 시스템을 설정할 때주의해야 할 두 가지

1. Heroku (특히 앱)에 대한 앱 액세스를 확인하려면

heroku apps

처음 설정하면 액세스 할 수있는 앱이 표시됩니다.

heroku keys:add

2. 그런 다음 git remote를 설정하십시오.

이미 생성 된 Heroku 앱의 경우 heroku git: remote명령 을 사용하여 로컬 저장소에 리모컨을 쉽게 추가 할 수 있습니다 . Heroku 앱 이름 만 있으면됩니다.

heroku git:remote -a appName

git remote rename 명령을 사용하여 리모컨의 이름을 바꿀 수도 있습니다.

git remote rename heroku heroku-dev(you desired app name)

그런 다음 git remote 명령을 사용하여 앱에 리모컨이 설정되어 있는지 확인할 수 있습니다

 git remote -v

4

헤 로쿠 포크 사용

  1. 새로운 "heroku fork"명령을 사용하십시오! 모든 환경을 복사하므로 github 저장소를 업데이트해야합니다!

    heroku fork -a sourceapp targetapp
    
  2. 로컬 복제

    git clone git@heroku.com:youamazingapp.git
    
  3. github에서 새로운 저장소를 만들고 추가하십시오.

    git remote add origin https://github.com/yourname/your_repo.git
    
  4. github에서 푸시

    git push origin master
    



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