info-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Consistency check of repository & knowing whether files are being wa


From: marko
Subject: Re: Consistency check of repository & knowing whether files are being watched
Date: Mon, 24 May 2004 13:13:43 +0200 (CEST)

Hi Mark,

> The CVS/fileattr directory in the parent may list a foo,v file that is
> found in Attic/foo,v .... however, it should not be possible to have
> both a ./foo,v and an ./Attic/foo,v in the same tree, so the added
> expense is mostly in processing the CVS/fileattr files using a search
> path to find the real ,v-file.

OK, that's good to know.


> > That brings me to the question how can I get information via cvs about
> > files being held in attics?
>
> Shortly, on feature the 'cvs ls' or 'cvs rls' command will be useful to
> you... Otherwise, using something like a 'cvs log -r1' may be useful.

Strange, my cvs 1.11.5 doesn't have a (r)ls command...
But well, by parsing the output of the log you'd be able to find the
string "Attic" in the RCS file path... ok


> > Also I do not know what happens if you have several watches on more
> > than one revision of a file... Have to test, but expect that to be
> > simply appended to the according line in the fileattr file together
> > with information which revision is actually in focus.
> To be honest, I have not tried it.

I found in one of my fileattr's a line which contained a "_watchers" and
an "_editors" entry just appended to each other separated with a ';'. A
further test showed that additional watchers or editors get simply
appended to the concerning entry with a separator ','.

To determine which watchers and editors are active on a repository
shouldn't be too complicated, since you simply would need to issue the
"cvs editors" and "cvs watchers" commands and parse the output, and filter
out the user names. These should be compared with the actual users in
CVSROOT/users. If somebody wouldn't be in that file you could trow a
warning. This of course requires a users file which is kept up to date.

> Well, the cvs advisory locking ('cvs watch', 'cvs edit', and 'cvs
> watchers') commands are not necessarily as well integrated as might be
> desirable. If you find bugs, feel free to send patches...

I am getting a bit surprised right now... I thought these commands are of
crucial value for environments where many people work on one and the same
repository...


By the way, I found in one of my repositories the following line in a
fileattr file

Fremove _watchers=kaening_flmpc23>edit+unedit+commit

What does this mean? A file named "remove" doesn't exist, apparently.
The 'F' should tell me that it is a file, or not?! But there is another
file in the corresponding Attic folder, which got removed from the HEAD
at a certain time, but its name is not "remove" either!

Marko




reply via email to

[Prev in Thread] Current Thread [Next in Thread]