info-cvs
[Top][All Lists]
Advanced

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

Re: Problem with tags and aliases


From: Doug Carr
Subject: Re: Problem with tags and aliases
Date: Fri, 11 Apr 2003 10:02:03 -0600
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.0.2) Gecko/20030208 Netscape/7.02


After a bit of poking around, found the cause of my problems. When I do the 'cvs checkout -r WA_TAG_DAC elan-ied', it looks like CVS works like this:

1. Cvs checks the 'CVSROOT/val-tags' file to see if WA_TAG_DAC exists. If it does, go to #3. If it does not, go to #2

2. Using the first entry in the alias ('bin' in my example below), search the files to see if any of them have WA_TAG_DAC. If the tag is found, add it to 'CVSROOT/val-tags' and go to #3. If the tag does NOT exist go to #4 WITHOUT processing any of the other entries in the alias.

3.  Process the command (in my case, checkout) and exit.

4.  Issue the 'no such tag' error and exit.

My problem is that 'bin' directory: it contains no files, so #2 doesn't find the tag and goes to #4. The quick solution for now is for me to move 'bin' down the alias list, behind a module that actually has files in it (libs in my case).

But... If that first module in the alias contains files but none of those files contain the tag (perhaps I only tagged a subset of all the modules in the alias), the same thing happens - and this isn't too easy to work around.

I would expect cvs to look in all of the aliased modules to see if the tag exists in ANY module before it issues the 'no such tag' error - otherwise, using alias and tags is an indeterminate process -> if val-tags has been updated (perhaps someine did a command with '-r <TAG>' with a plain module sometime in the past) I get one result; if val-tags has not been updated, then I get a different result.

Just out of curiosity, why isn't val-tags update when a tag is applied?

Thanks,

Doug.

Hi all,

   Apologies if this appears in the list more than once: email problems...

I'm having a problem with tags when I try and access them through an alias. If I create the tag against the alias with rtag and then try to access it through the alias, I get a 'no such tag' error. If I access the tag using a module name, then it finds the tag. If I then try the alias again, it now finds the tag. See below for the details. I think it affects only one of my 8 CVS repositories, and I can't spot any obvious differences between the problem one and the others.

  Any ideas on a solution or where to start looking?

Thanks,
Doug.

================

elan-iedm is an alias defined in the elan_ied/CVSROOT/modules files as
base_iedm_alias -a bin libs iedcore makeenv shared shared_utils sel sel351s CvsToIdcs abb pdrv appl cfg
  elan-iedm       &base_iedm_alias

CVSROOT is
  :pserver:address@hidden:/cvsrootdir/elan_ied

Apply tag in an empty directory:
  cvs -f rtag -R   -r HEAD WA_TAG_DAC elan-iedm

val-tags contents:
  WA_TAG_6 y
  WA_BRANCH_6 y
  WA_TAG_123 y
  WA_TAG_1234 y

Grepping the files in the repository for WA_TAG_DAC returns a bunch of matches

Use the tag with the alias
  cvs -fQ checkout -r WA_TAG_DAC elan-iedm
  results in
      cvs [server aborted]: no such tag WA_TAG_DAC
  and no directory created or populated

val-tags contents:
  WA_TAG_6 y
  WA_BRANCH_6 y
  WA_TAG_123 y
  WA_TAG_1234 y

Use the tag with a module instead of the alias
  cvs -fQ checkout -r WA_TAG_DAC libs
  results in the 'libs' directory created and populated

val-tags contents:
  WA_TAG_6 y
  WA_BRANCH_6 y
  WA_TAG_123 y
  WA_TAG_1234 y
  WA_TAG_DAC y

Remove the libs directory
  rm -rf libs

Use the tag with the alias
  cvs -fQ checkout -r WA_TAG_DAC elan-iedm
  results in the 'elan-iedm' directory created and populated

val-tags contents:
  WA_TAG_6 y
  WA_BRANCH_6 y
  WA_TAG_123 y
  WA_TAG_1234 y
  WA_TAG_DAC y

Cvs version is
  cvs --version

  Concurrent Versions System (CVS) 1.11.4 (client/server)

  Copyright (c) 1989-2002 Brian Berliner, david d `zoo' zuhn,
                          Jeff Polk, and other authors

  CVS may be copied only under the terms of the GNU General Public License,
  a copy of which can be found with the CVS distribution kit.

  Specify the --help option for further information about CVS
Client info
  uname -a
Linux clientmachine 2.4.18-8.2mdk #1 Tue Jun 25 03:05:52 MDT 2002 i586 unknown
Server info
  uname -a
Linux servermachine 2.4.18-6mdk #1 Fri Mar 15 02:59:08 CET 2002 i686 unknown
Val-tags
  -rw-rw-rw-    1 myname  cvsgroup       65 Apr  9 10:43    val-tags



--
Your favorite stores, helpful shopping tools and great gift ideas.
Experience the convenience of buying online with address@hidden
http://shopnow.netscape.com/





reply via email to

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