![](https://secure.gravatar.com/avatar/b6f108c28619b2603af2d74dc2f6e68e.jpg?s=120&d=mm&r=g)
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi Ernesto, hi Robin, thanks for your replies. The thing I like most with your solution is that svnversion provides a modify flag, so I can see whether all changes have been cheched in. Great. A little drawback is that all files under the current path are used to determine the version. If theres a file in the path which is not part of the document changes to this file will also change the revision of the document. But I think this can be easily prevented by placing every document into an own directory. What do you think of using: \def\SVNVERSION{svnversion -n > svnversion.tex} \ifeof18 \installprogram{\SVNVERSION}% \else \executesystemcommand{\SVNVERSION}% \fi Kind regards, Markus Ernesto Schirmacher schrieb:
If your sources are in svn, then they actually have the same svn- number, after a commit. But the numbers in the $Revision$ or $Id$ tags of your working copies are not updated by svn commit. However, if you do an "svn update" after the commit, it should update the numbers.
This is not true. The complete name of $Rev§$ is $LastChangedRevision$. It's the revision of the last change to this file.
So, you shouldn't need to work out the maximum value.
The svn keyword Revision or Rev or LastChangedRevision (they are all the same) are defined as the last revision where the file changed (see subversion book chapter 3 section keyword substitution). It seems to me that subversion does not have a global keyword that would give you the last revision number. There can be no useful global last revision number, because it always depends on the used URL.
But they do provide svnversion to get that number automatically (see subversion book highlighted box named "Where's $GlobalRev$?"). So Robin's solution below seems to be the best way to get the global version number.
svnversion> svnversion.tex ; texexec document.tex
in the Makefile, and on the document front page somewhere
\doiffileelse{svnversion.tex}{ Subversion revision \ignorespaces \input svnversion\relax \removeunwantedspaces . \crlf }{}
If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : https://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___________________________________________________________________________________ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFHldA9dnooMonJSYkRAggwAJ9pNN8yoJR5rIvdahf4eJo0sTp5kQCfUqOR EVoOQluHh+9LhNRKTJDIFo8= =il3n -----END PGP SIGNATURE-----