Otro acercamiento a solv El problema es tomar una amplia comprensión de lo que está haciendo el archivo .git/config asociado con la aplicación heroku y realizar los ajustes necesarios.
1.Abra .git/config
desde la raíz de su proyecto heroku.
Su archivo de configuración de git puede parecerse a esto, especialmente si está haciendo malabares con un par de cuentas heroku en su máquina.
[email protected]{heroku.account}
aparece en lugar de [email protected]
debido a la configuración en su archivo ~/.ssh/config
. La referencia a heroku-app-8396.git
se debe actualizar para que coincida con su nombre de proyecto heroku. Cada cuenta heroku que tenga debe tener una entrada en el archivo ~/.ssh/config
. Obviamente, la cuenta heroku con la que está asociado este proyecto heroku debe aparecer en su archivo .git/config
.
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
precomposeunicode = false
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = [email protected]:heroku-app-8396.git
[remote "heroku"]
fetch = +refs/heads/*:refs/remotes/heroku/*
url = [email protected]:heroku-app-8396.git
[branch "master"]
remote = origin
merge = refs/heads/master
[heroku]
account = heroku.account
2. Cuando ejecuto git pull heroku master
, todo parece funcionar bien.
3. Cuando corro heroku logs
, me sale un mensaje de error:
$ heroku ps
! No app specified.
! Run this command from an app folder or specify which app to use with --app APP.
¿Por qué?
Por lo que puedo decir, el comando heroku
no parece saber qué hacer con las referencias {heroku.account}
.Si cambiamos esas referencias a com
(que es el valor por defecto cuando no se está usando el plugin heroku 'cuentas'), los comandos heroku
trabajar una vez más, pero ahora nuestros git
llamadas está diciendo que hay un problema diferente:
$ git pull heroku master
! Your key with fingerprint d6:1b:4c:48:8c:52:d4:d6:f8:32:aa:1a:e7:0e:a2:a1 is not authorized to access smooth-robot-8396.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
Una forma de resolver esto es definir un control remoto para git
y un control remoto para heroku
y luego indicar heroku
qué control remoto usar.
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
precomposeunicode = false
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = [email protected]:heroku-app-8396.git
[remote "heroku"]
fetch = +refs/heads/*:refs/remotes/heroku/*
url = [email protected]:heroku-app-8396.git
[remote "heroku-app"]
fetch = +refs/heads/*:refs/remotes/heroku/*
url = [email protected]:heroku-app-8396.git
[branch "master"]
remote = origin
merge = refs/heads/master
[heroku]
remote = heroku-app
account = heroku.account
me gusta para especificar explícitamente el mando a distancia cuando estoy empujando el contenido de un mando a distancia, por lo que la distancia es heroku
para que, a pesar de que esta configuración también da cabida a empujar/tirar usando el valor por defecto (por ejemplo, git push
). Creé una nueva "aplicación heroku" remota y agregué remote = heroku-app
para indicar heroku
para usar un control remoto que no incluye la cuenta heroku en el URI.
Ahora puedo ejecutar mis comandos git
y heroku
como quiera.
Ya no tiene que especificar la pila de cedro, es la predeterminada ahora –
Asegúrese de desplazarse hacia abajo más allá de las primeras dos respuestas. [Este] (http://stackoverflow.com/a/24816347/199712) es el mejor. –