'heroku' no parece ser un repositorio git


181

Cuando intento enviar mi aplicación a Heroku, obtengo esta respuesta:

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.

Intenté 'heroku keys: add' pero aún se obtiene el mismo resultado. Ya tengo una clave ssh para mi cuenta de GitHub.


¿Qué comando usaste para empujar? y que pasos hiciste antes?
StickMaNX

1
eche un vistazo a la salida de git remote -vpara ver qué controles remotos ha configurado.
John Beynon el

1
asegúrese de estar en el directorio correcto. Ese fue mi problema.
tmthyjames

1
@tmthyjames - sigue, este también fue mi problema, ¡gracias!
andy mccullough

Respuestas:


434

Para agregar una aplicación Heroku como control remoto Git, debe ejecutarla heroku git:remote -a yourapp.

Fuente: Implementación con Git


66
Esta es la solución si clonaste el repositorio.
JGallardo

1
Después de agregar un control remoto válido, observe que git push heroku masterfallará si está intentando implementar desde un subdirectorio. La implementación con heroku debe realizarse desde el directorio raíz con una carpeta package.json y .git válida, como se
indica

1
Yo añadiría que para yourappusted significa el nombre de la aplicación heroku, que no siempre pueden coincidir con el nombre de su aplicación en git o local, etc.
Lee McAlilly

49

Puede intentar lo siguiente en su directorio raíz:

// inicializa git para tu proyecto, agrega los cambios y realiza una confirmación

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

// crea la aplicación heroku y presiona para heroku

heroku create
git push heroku master

No estoy seguro de dónde estás en el proceso. Tampoco necesitas github para desplegar en heroku, solo git. ¡Espero que esto ayude!


2
Esto funcionó para mí. Solo necesitaba ejecutar heroku create nuevamente. Por alguna razón, la primera vez no creó un control remoto git.
Joshua Dance

1
Antes de presionar, debe agregar 'heroku git: remote -a yourapp'
Jitendra

35

Primero, asegúrate de haber iniciado sesión en heroku:

heroku login 

Ingrese sus credenciales.

Es común obtener este error cuando se usa un repositorio git clonado en una nueva máquina. Incluso si sus credenciales de heroku ya están en la máquina, todavía no existe un vínculo entre el repositorio clonado y el heroku local. Para hacer esto, cd en el directorio raíz del repositorio clonado y ejecute

heroku git:remote -a yourapp

1
Solo una nota para principiantes, yourapparriba está el nombre de su aplicación en la configuración en el panel de control de Heroku
nkhil

9

Siguiente artículo oficial de Heroku :

Inicializar GIT

$ cd myapp
$ git init

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

Luego crea (inicializa) la aplicación heroku con:

$ heroku create YourAppName

Por último, agregue git remote:

$ heroku git:remote -a YourAppName

Ahora puede implementar su aplicación de manera segura con:

$ git push heroku master

Debe esperar un tiempo y ver si no obtiene ningún error / interrupción en la consola durante la implementación. Para más detalles mira el artículo de heroku .


7

Sigue estos pasos:

$ heroku login

Crear un nuevo repositorio Git
Inicialice un repositorio git en un directorio nuevo o existente

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

Implemente su aplicación
Confirme su código en el repositorio e impleméntelo en Heroku usando Git.

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

Repositorio Git
existente Para repositorios existentes, simplemente agregue el control remoto heroku

$ heroku git:remote -a appname

Error: ---> La aplicación no es compatible con el paquete de compilación: https://codon-buildpacks.s3.amazonaws.com/buildpacks/heroku/python.tgz... no entiendo, ¿dónde está mal?
KingRider

@KingRider Comprueba qué aplicación estás implementando. SI implementa la aplicación Python, no es necesario especificar Python en el archivo Requirement.txt
MD Shahrouq

4

Puede valer la pena revisar el archivo de configuración en la carpeta .git. Si faltan los parámetros de heroku, obtendrá este error heroku param

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

la carpeta .git debe estar en el directorio de archivos de la computadora local para la aplicación que creó en heroku. por ejemplo, C: \ Users \ You \ Your app.git

Espero que esto ayude


3

Mi problema fue que usé git (en lugar de heroku git) para clonar la aplicación. Entonces tuve que:

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

Recuerde cambiar MyApp por el nombre de su aplicación.

Entonces podría proceder:

git push heroku master

3

Si aparece este error, es porque no hay un control remoto llamado Heroku. Cuando haces una creación de Heroku, si el control remoto de git aún no existe, automáticamente creamos uno (suponiendo que estés en un repositorio de git). Para ver sus controles remotos, escriba:

" git remote -v". # Para una aplicación llamada 'nombre de aplicación', verá lo siguiente:

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

Si ve un control remoto para su aplicación, puede simplemente " git push master" y reemplazarlo con el nombre remoto real.

Si falta, puede agregar el control remoto con el siguiente comando:

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

Si ya ha agregado un control remoto llamado Heroku, puede recibir un error como este:

fatal: remote heroku already exists.

entonces, elimine el control remoto existente y agréguelo nuevamente con el comando anterior:

git remote rm heroku

Espero que esto ayude…


2

Para mí, la respuesta fue cd en el directorio raíz de la aplicación antes de ejecutar heroku createogit push heroku master


1

Encontré el mismo error cometiendo un error mucho más novato: estaba escribiendo Heroku con una "H" mayúscula, en lugar de minúsculas.

Reconozco que ciertamente no es la solución para todos los que encuentran este error, pero fue en mi caso.


1

Obtuve el mismo error y resultó que estaba en el directorio incorrecto. Es un simple error hacer una doble verificación de que está en la raíz y luego ejecutar heroku createy heroku git push masterotra vez. Por supuesto, debe haberlo hecho git init, como se menciona en la respuesta de StickMaNX anterior, ya antes de los pasos de heroku.



1

Olvidó vincular el nombre de su aplicación a su heroku. Es un error muy común. Si su aplicación no está creada, use:

heroku create (optional app name)

más:

git add .
git commit -m "heroku commit"

heroku git:remote -a YOUR_APP_NAME

git push heroku master

0

Para aquellos que intentan que heroku trabaje en codeanywhereIDE:

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

0

Tuve que ejecutar el símbolo del sistema de Windows con privilegios de administrador


Gracias por tu respuesta. ¿Quizás podría explicarle al OP cómo se hace esto? Siempre ayuda, también para los futuros espectadores de este hilo, dar respuestas lo más detalladas posible.
Niels

@niels solo encuentra el icono cmd, a través del menú de inicio, por ejemplo. Luego haga clic derecho y presione Ejecutar como administrador
Jesus Rodriguez

0

Los siguientes comandos funcionarán bien para la implementación de la aplicación ruby ​​on rails en heroku si heroku ya está instalado en la máquina del desarrollador. # indica un comentario

  1. inicio de sesión de heroku
  2. heroku crear
  3. claves heroku: agregue #esto agrega claves de máquinas locales a heroku para evitar la entrada repetida de contraseña
  4. git push heroku master
  5. heroku rename new-application-name #rename aplicación al nombre preferido que no sea el nombre de heroku generado automáticamente



0

He visto todas las respuestas aquí y lo único que falta es después de seguir estos pasos:

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

Debe ejecutar el siguiente comando:

$ heroku git:remote -a <YourAppNameOnHeroku>

Y por último, ejecuta esto:

$ git push -f heroku <NameOfBranch>:master

Tenga en cuenta que usé < NameOfBranch > porque si actualmente está en una rama diferente para dominar, todavía arrojaría errores, por lo que si está trabajando en master use master, de lo contrario, coloque el nombre de la rama allí.


0

Mostrar todas las aplicaciones con las que Heroku tiene acceso

heroku apps

Y verifica que tu aplicación exista

 execute heroku git:remote -a yourapp_exist
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.