Dedicado a mis proyectos en Gambas ,un lenguaje de programación parecido al Visual Basic + Java pero ampliamente mejorado y...¡¡para gnu/linux!!.La potencia del gnu/linux sumada a la facilidad del Basic



Consultas, Desarrollo de programas y petición de presupuestos:



viernes, 17 de enero de 2014

Como comparar un ficheros tipo .class de google code de distintas revisiones

Como comparar un fichero tipo .class alojados en Google Code de distintas revisiones




Cuando intentamos ver las diferencias de archivos con extensión .class de un proyecto de Gambas, en google code, no es posible ya que google code los confunde con los bytecode que genera Java, (que también tienen la extensión .class). Esta es la pantalla del error que os comento:

Error al intentar comparar dos archivos .class: Binary files differ

No puede ya que los confunde con binarios de Java... ¿que podemos hacer?

Vamos a usar el servicio web: http://www.mergely.com/, para resolver este inconveniente.

Aparecerá esta pantalla:


Le damos al botón "online diff", y pasamos al editor:


Nos vamos al menu "File" y le damos a "import", y elegimos la pestaña "Import URL", de esta forma le vamos a indicar la url donde están nuestros archivos alojados

Formulario de "import" en la pestaña  "Import Url"
(nota: también podemos comparar archivos de nuestro disco duro, usando la pestaña "Import File")

Ahora debemos saber cual es la url de los ficheros a comparar.  Nos vamos a google code, y vamos a buscar el enlace de la vista en bruto: "View raw file" del fichero y de la revisiones que queremos comparar:



Pulsamos a ese enlace "View raw file" y guardamos la ruta URL:

vista en modo bruto "view raw file" de un fichero del tipo .class en code google
Arriba podeis ver la ruta completa donde esta el fichero:
https://generadorcarnet.googlecode.com/svn-history/r26/trunk/generadorcarnet/.src/Form1.class

Así conseguimos los dos enlaces (del mismo fichero, de distintas revisiones), y los pasamos al formulario de "Import Url"

La revision más antigua (numero de revision menor) la ponemos en la url "left" y la más actual (numero de revisión mayor) en el url "right":
https://generadorcarnet.googlecode.com/svn-history/r26/trunk/generadorcarnet/.src/Form1.class
https://generadorcarnet.googlecode.com/svn-history/r31/trunk/generadorcarnet/.src/Form1.class




Y pulsamos el botón de "Import" del formulario "Import Url", obtenemos la comparación:

Comparando dos archivos alojados en code google
El sombreado azul indica nuevas lineas introducidas, el sombreado rojo las lineas eliminadas.

Y así los podemos comparar y ver las diferencias y cambios introducidos entre el mismo fichero de distinta revisiones

Además, podemos guardar las diff, pulsando en el botón "save diff", que se encarga de descargar un archivo de texto plano con la información.




Saludos

Julio