2012-07-19 12 views
54

tengo la siguiente línea en mi Gemfile:archivo de la gema con git remoto en su defecto heroku empujar

gem 'client_side_validations', :git => "[email protected]:Dakuan/client_side_validations.git", :branch => "master", ref: '2245b4174ffd4b400d999cb5a2b6dccc0289eb67' 

el repositorio está apuntando a es pública y se puede ejecutar bundle install/actualización localmente muy bien. Cuando trato de empujar a Heroku me sale el siguiente error:

Fetching [email protected]:Dakuan/client_side_validations.git 
    Host key verification failed. 
    fatal: The remote end hung up unexpectedly 
    Git error: command `git clone '[email protected]:Dakuan/client_side_validations.git' "/tmp/build_1xa9f06n4k1cu/vendor/bundle/ruby/1.9.1/cache/bundler/git/client_side_validations-56a04875baabb67b5f8c192c6c6743df476fd90f" --bare --no-hardlinks` in directory /tmp/build_1xa9f06n4k1cu has failed. 

! ! Failed to install gems via Bundler. ! ! Heroku push rejected, failed to compile Ruby/rails app

Alguien tiene alguna idea acerca de lo que está pasando aquí?

Respuesta

151

Utilizar esta dirección URL en lugar de GitHub: git://github.com/Dakuan/client_side_validations.git

La URL [email protected]:… es la versión de SSH se puede escribir, que requiere autenticación con una clave SSH conectado a una cuenta de GitHub que tiene acceso de escritura al repositorio.

La URL git://github.com/… es la versión pública, de solo lectura.

Desde la gema que está utilizando está en un repositorio GitHub pública, también se puede emplear sus abreviaturas en su Gemfile:

gem 'client_side_validations', :github => 'Dakuan/client_side_validations' 

Véase el Bundler Git documentation para más información.

+4

Sí, ese es el tejón. ¡Gracias por tu ayuda! – Dakuan

+14

no se olvide de ejecutar un paquete de instalación para actualizar su gemfile.lock y confirmar sus cambios después de cambiar a la url pública de github –

+2

No esperaba una resolución tan simple a este problema. ¡Gracias! –

0

Una segunda respuesta tardía, ya que encontré una salida confusa de los registros de compilación de Heroku que me dejó perplejo por un tiempo.

Si usted tiene múltiples Github alojado gemas en su Gemfile, y uno de ellos es inaccesible (en mi caso, yo había señalado accidentalmente a un acuerdo de recompra privada de la mina), los registros de construcción arrojan un error como Username not found o Repository not found para todos gemas alojadas en Github, incluso las que están disponibles.

Cuestiones relacionadas