2011-09-15 6 views
2

Possible en double:
How to display current working copy version of an hg repository on a PHP pageautomatiquement mettre à jour `__version__` avec mercurial?

similaires à How can I rewrite python __version__ with git?, il est la meilleure méthode pour stocker un numéro de version mis à jour automatiquement dans un fichier python?

How good is my method of embedding version numbers into my application using Mercurial hooks? et la Mercurial keyword plan font clairement la méthode de style svn de mise à jour automatique $Revision$ ou $Id$ n'est pas souhaitable et que le système de construction doit faire ce travail à la place. Ceci est python cependant, il n'y a pas de système de construction et c'est pour un petit programme entièrement contenu dans un fichier, donc il n'y a pas d'emballage.

+1

Vous utilisez Python, mais j'ai demandé [une question similaire] (http://stackoverflow.com/questions/6005751/how-to -display-current-working-copy-version-de-un-hg-repository-sur-un-php-page) pour PHP et a obtenu ce que je pensais être une très bonne réponse, il devrait être utilisable pour ce que vous essayez . –

+0

Eh bien c'est ce que j'obtiens pour rendre ma langue de recherche spécifique quand le problème était vraiment agnostique de la langue ;-) Merci. –

Répondre

2

Vous pouvez toujours ajouter un système de construction, quelle que soit la langue dans laquelle vous écrivez votre programme. Vous pouvez dire "mais la langue X n'a ​​pas besoin d'un système de construction", mais cette question le montre: elle en a besoin pour ces tâches répétitives qui doivent être effectuées avant toute sortie. Ce sont des tâches comme la construction de la documentation, l'exécution de tests et le téléchargement du résultat quelque part.

Un Makefile simple, ou un script shell suffit:

all: version 

version: 
    hg id > __version__ 

test: version 
    @echo -n "running tests... " 
    @sleep 1 
    @echo " done." 

doc: version 
    @echo -n "building documentation... " 
    @sleep 1 
    @echo "done." 

upload: test doc 
    @echo -n "creating tarball... " 
    @sleep 1 
    @echo "done." 
    @echo -n "publishing on website... " 
    @sleep 1 
    @echo "done." 

.PHONY: version test upload doc 
Questions connexes