> -----Original Message----- > From: Daniel Shahaf [mailto:d...@daniel.shahaf.name] > Sent: 04 December 2013 16:08 > > Ryan Schmidt wrote on Wed, Dec 04, 2013 at 06:14:33 -0600: > > > > On Dec 4, 2013, at 06:00, Cooke, Mark wrote: > > > > > I would like to include the svn revision number in my > project's version info but I am confused by the results of > svnversion. I want the version number of a tagged tree to > always be the same (i.e. the last commit to the tag) but if > the tag is to be rebuilt using a fresh checkout some time > later `svnversion` seems to report the HEAD revision. So I > looked at `svnversion -c` but this always seems to give me a > range e.g. `2:1476`, even directly after an update. > > > > > > I have read the red book but it is quite vague about the > -c option. Why is `-c` always giving me a range? > > > > I think the `-c` option means: given all the item in this > directory and recursive subdirectories, give the oldest and > newest changed file. So, the oldest item in your working copy > was last changed in revision 2, and the newest was last > changed in revision 1476. > > > > And `svnversion` without any flag does seem to give the latest > > revision to which the working copy was updated, not the last changed > > revision. > > > > Note that "bare" svnversion can give a range as well: > > % svnversion -c ~srv/conf > 105:143 > % svnversion ~srv/conf > 142:143
Understood, however for my example I get a different "sort" of answer with(out) `-c` on all my WCs (including an unmodified fresh checkout), without `-c` gave a single revision, with `-c` always gives a range. That seems to me to be inconsistent (even wrong): {{{ D:\PROJECTS\Support\Code>svn --version svn, version 1.7.10 (r1485443) compiled Jun 1 2013, 07:40:50 <snip> D:\PROJECTS\Support\Code>svn up . Updating '.': At revision 638. D:\PROJECTS\Support\Code>svnversion . 638 D:\PROJECTS\Support\Code>svnversion . -c 235:635 }}} > FWIW, all this should be documented in 'svnversion --help'. > Is it clear there? As I mentioned, the help text would lead me to expect a consistent style of results, hence the question. The only mention of `-c` is:- {{{ -c [--committed] : last changed rather than current revisions }}} Combined with the main text: "The version number will be a single number if the working copy is single revision, unmodified, not switched and with an URL that matches the TRAIL_URL argument." I would also expect a single number using `-c`. However, I am exclusively on windoze so tsvn's SubWCRev app is ideal for what I want. ~ mark c > > If you want the last changed revision, you could use: > > > > svn info | sed -n 's/^Last Changed Rev: //p'