Yo no se el resto, pero siempre he querido llevar un control MUY preciso sobre
la version ejecutable de mi software y este sobre el código fuente, es decir,
cual código fuente es la versión que estoy ejecutando.
Una manera d e proceder es llevar un control estricto de la numeración, asi como otros parámetros , como la fecha, etc...
¿ Eres de esas personas, al igual que yo, que piensa que es mejor que 'algo' lo
realice por ti, y dedicar el tiempo a pensar en otras cosas ?
En vez de poner, #define VERSION "La 2.0a", que vete tu a saber lo que mas le
da al usuario, que esto lo ponga solito el compilador.
¿ Como solo, y como es posible ?
Bueno, la verdad es que el compilador no pone nada. La mágia se hace a traves
de un CVS.
Si te consideras programador, y no usas un CVS , ni eres programador ni eres na!
Porque , las ventajas que aporta, ya sea Subversion ,CVS o cualquier otro control de
versiones, son tan grandes que parece mentira que todavia halla gente que no use un CVS,
y más la gente que se autodenomina 'programador'. Como no sea del Video VHS ;-)
En fin , a lo que ibamos.
Para poder tener una referencia entre el ejecutable y a que codigo pertenece, procederemos
a poner , mas o menos informacion , eso depende de ti:
#define VERSION ' $Id: $' --> Esta cadena sera AUTOEXPANDIDA por el CVS, de esta manera, obtenemos
#define VERSION ' $Id: miaplica.prg,v 1.63 2005/04/14 15:38:07 rafa Exp $ ', una vez hecho el
COMMIT de nuestro codigo fuente.
Lógicamente, en nuestro código debemos tener una opcion de "Version ID" o "Revision" , y
una llamada a la funcion MsgInfo( VERSION,"Version desde el CVS" )
A continuacion , compilamos la aplicacion, y el ejecutable obtenido ya esta marcado con la version del CVS.
Asi, el dia de mañana, me encuentro con un exe, consultando la opcion de version, se como
a evoluciona mi software, es más, si se encuentra un error banal, y nos interesa SOLAMENTE
parchear una trozo de codigo, no hacer un cambio de version , tan simple como PONER los fuentes
desde el CVS a como estaba ese ejecutable, y arreglar el fallo, construir de nuevo un
exe para ese version en concreto y arreando.
A por cierto, si no queremos mostrar todo lo del Id, podemos usar la otra
macro:
#define VERSION ' $Revision: $ --> Esto se AUTOEXPANDE por cada COMMIT a:
#define VERSION ' $Revision: X.XX $ '
Asi, por fin, puedo liberarme de poner versiones o revisiones del software.
Espero que al menos este TIP os sea de ayuda ;-).
Eso si, solamente para los del CVS, la gente que todavia usa el Edit del D.O.S
que los hay, creerme,jejeje, abstenerse.
Saludos
Rafa Carmona.
Si los habemos que siguimos usando el edit del ms-dos, pero lo peor que lo usamos para programar en gw-basic (lo mio es la arqueologia).