[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Keyword Substitution questions

From: Jay McCarthy <jay_at_kenyamountain.com>
Date: 2002-02-27 21:22:16 CET

Hi, I've been following the mailing list for a while and reading all the
docs and source and I was wondering about something...

The first entry in the General Problems secton of notes/STACK
states that:
        "updates (right now) don't bump the revision of every entry as they
should; instead we're only bumping the changed entries."
And currently their are the keywords, "LastChangedDate" and
"LastChangedRev" that expand to the last time a given file was changed
expressed as a date and a revision number (respectively.)

With these two facts, I have a question - When the issue mentioned in
notes/STACK is corrected, the behavior of those keywords will change:
they will then refer to the last time the repository changed and the
current revision number of the repository.

If that is correct (I have not looked at the code which gets the values
for the keywords prior to their substitution), then will there be a way
to get the last date and revision a file was changed? And should there
be? I know that the subversion developers think that CVS was incorrect
in versioning each file separately, and this type of thing would be a
regression (if it were implemented by keeping track of that information
in the repository.)

When trying to think of a way to remedy this, this was my line of
When a 'svn update' is issued, update all file's rev number and only
change the keywords on files that have changed.
However, thinking about this you have the problem where a checkout won't
know which files have changed unless that's stored in the repository.
When the file is in the repository is the keyword expansion directive
stored ($Keyword: $) or is the current expansion of it stored ($Keyword:
Something$)? I would assume that just the $Keyword: $ is stored -
because the expansion code is in the working copy library. And if it
were stored expanded then a commit (which updates the revision number)
would have to change the files with LastChangedRev in their svn:keywords
- and thus the user would be committing something that they did not know
about and the file would have to change at the time of the commit.

Is any of this thought correct? Talked about before?
Am I an idiot? I don't know... perhaps someone can correct me.

Jay McCarthy <jay@kenyamountain.com>
aim: rasarasda / irc: feelicks
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Oct 21 14:37:10 2006

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.