Usando bzr version-info
¶
Repaso General¶
Este documento describe las formas de usar bzr version-info
como
parte del proceso de embeber la informacion de vesion a un proyecto.
Projecto Python¶
TODO: Figure out how to attach into setup.py
Si usa un archivo Makefile para construir su proyecto, puede generar un archivo on la informacion de version tan simple como:
library/_version.py:
bzr version-info --format=python > library/_version.py
Eso genera un archivo que contiene 3 diccionarios:
- version_info: Un diccionario conteniendo informacion basica sobre el estado actual
- revisions: Un diccionario listando todas las revisiones en el historial del tree, junto con los tiempos y los mensajes de los commits. Esto por defecto esta en blanco salvi que use
--all
o –include-history` es provisto. Esto es util si quiere seguir que bugs arregla el lanzamiento de esa version. Para muchos proyectos es mas informacion de la que se va a necesitar.- file_revisions: Un diccionario listando la revision que modifico por ultima vez todos los archivos del proyecto. Esto puede ser usado similarmente a como se usan las palabras claves
$Id$
en los archivos controlados en CVS. La ultima fecha de modificacion puede ser determinada mirando en el mapa derevisions
. Esto tambien esta vacio por defecto, y habilitado solo por--all
o--include-file-revisions
.
Check Clean¶
La mayoria de la informacion sobre el contenido del proyecto puede
ser determinada a muy bajo costo con solo leer las entradas de revisiones.
Sin embargo, puede ser util si el working tree fue actualizado completamente
cuando fue empaquetado, o si hubo alguna modificacion local. Al proveer
--all
o --check-clean
, bzr
va a inspeccionar el working tree,
y definir el clean
flag en version_info
, al igual que definir
entradas en file_revisions
como modified
donde es apropiado.