2011-04-01 15 views

Respuesta

38

Puede gem unpack, añadir su modificación, a continuación, modificar el gemspec si es necesario y construir de nuevo:

+1

Todos estos tienen bucles de redirección ahora. – CiscoIPPhone

+1

Supongo que nunca sabremos cómo construirlo de nuevo – FloatingRock

+0

Actualizado los enlaces. –

15

Quizás una manera amigable fuente más aceptable y abierto hacer esto sería verificar si la fuente de la gema está disponible en algo como github. Luego, crea una horquilla del código de la gema, haz los cambios y envía una solicitud de extracción. Lo más probable es que alguien más quiera esa funcionalidad también y será anunciado por su contribución.

4

Si carece de un gemspec de la gema, extraerla con este comando:

gem spec my_gem --ruby > my_gem.gemspec 

Por supuesto la sustitución de my_gem con el nombre joya apropiada. Edite el archivo resultante para que quepa (en un ejemplo, tuve que eliminar una línea que causó un error), y debería estar listo para continuar.

+0

¡Gracias! Eso fue crucial – Anwar

19

Las nuevas versiones de bundler le permiten hacer esto con el comando siguiente:

bundle open gem_to_edit 

Esto abrirá el código joya en su editor de texto predeterminado.

(Pista:. Si usted está en Mac OS X/Linux, se puede especificar su editor de texto predeterminado cambiando la variable $ EDITOR Digamos que usted está en la fiesta, usted podría abrir su ~/.bash_profile y agrega: export EDITOR='subl -w' para configurar Sublime Texto como su editor predeterminado)

38

Descargue su código fuente en una carpeta separada (tal vez desde github). Luego modifique su Gemfile para que apunte a la fuente directamente, de modo que pueda editarla y probar sus cambios directamente.

Por ejemplo, supongamos que quiere editar la gema secure_headers y que la ha clonado en ~/workspace/secureheaders. A continuación, puede utilizar el siguiente en su Gemfile:

gem 'secure_headers', :path => "~/workspace/secureheaders" 

continuación, basta con modificar los archivos de origen en el interior del árbol de fuentes y usted debería ser capaz de ver los cambios aplicados directamente.

+8

+1 esta es la única respuesta que describe completamente cómo probar la fuente modificada – zelanix

+0

http://stackoverflow.com/a/10106890/1039893 Esto también se necesita a veces – Anwar

Cuestiones relacionadas