I'm sure many of us have added a file on a branch such that the file
only exists on the branch and exists on the trunk as a dead revision.

While trying to set up a test case to diagnose a problem a developer was
having, I tried the following:

1. Created a test repository.
2. Created a working directory.
3. Checked out the root directory non-recursively.

Now at this point I wanted to add a file, but only on a branch.  I
wanted a dead revision on the trunk.

>From what I can tell it isn't possible via the standard CVS commands.

The only way that a file can be added on a branch is if there exists a
file on that branch.  Having that first file allows you to update to the
branch. The consequence of updating to the branch is that the CVS/Tag
file is created in the working directory with the name of the branch to
commit to.  At that point when you create a file, add it, and commit it,
the RCS file for the added file is created in the Attic with a dead
revision on the trunk and the file as it was added on the branch
revision.

I just had a possible way to do it. (just a sec)

Ok.  You can do it by manually creating CVS/Tag containing "Tbranchtag"
where "branchtag is the tag you want to add the file on.

Or.  You can add the tag you want to add files on to
$CVSROOT/CVSROOT/val-tags by adding a line of the format "branchtag y".

So, since the only thing that seems to matter is whether or not the tag
exists in val-tags, then shouldn't there be a way to manage valid tags?
Maybe something to validate val-tags?

Admittedly, I doubt this concerns anyone.  I just thought that it was
odd to require a file be already on a branch before adding new files to
the branch.

Shane Turner

Reply via email to