info-cvs
[Top][All Lists]
Advanced

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

Re: Merge of branch to HEAD, failed to update head with any commited bra


From: James R Kirk
Subject: Re: Merge of branch to HEAD, failed to update head with any commited branch changes when files were locally modified.
Date: Thu, 1 Sep 2005 13:36:07 -0400


Jim Hyslop <address@hidden> wrote on 09/01/2005 12:30:26 PM:

> James R Kirk wrote:
> >
> > cvs-1.11.20-1 running on SUN sparc ultra-4, SunOS 5.8
> >
> > Checked out the current HEAD of a project to a temporary merge sandbox.
> >         cvs co project
> > Followed with the merge of latest changes on the branch( first merge
> > from the branch to the HEAD
> >         cvs update -j branchtag project
> > Merge did not update any files that had been locally changed in a
> > developers sandbox of that branch.
> >
> > I did not expect the merge to pick up uncommited local changes.
> >         *But I did expect CVS to merge the number of earlier commited
> > changes to the same files on the branch*.
> >
> > I have looked the latest on-line CVS documentation, and could not find
> > any mention of this type of behavior.  
> >
> > My developers are asking how  the cvs merge process even knew about the
> > uncommited changes in the branch sandbox?
>
> There is only one way for this to happen: the merge command was issued
> from within the branch sandbox, and not from within the fresh checkout.
>
> Did the 'project' subdirectory exist before the above commands were issued?

The 'project' subdirectory has existed for over ten years we have used CVS.
The branch sandbox and the fresh merge sandbox were on different servers with CVS mounted from a third server. The merge output files are only on the server where the merge sandbox was created.  I checked and corrected conflict files from the merge in that same merge sandbox.  
How would the merge conflict files end up in the "merge" sandbox if I ran the merge on the branch?

> > A cvs status on the merge sandbox for one of the files in question gave
> > the following:
> > ===================================================================
> > File: qwreloadout.sc    Status: Locally Modified
> >
> >    Working revision:    1.13    Result of merge
> >    Repository revision: 1.13  
> >  /CVSROOT/project/qw/src/qwreloadout/qwreloadout.sc,v
> >    Sticky Tag:          (none)
> >    Sticky Date:         (none)
> >    Sticky Options:      (none)
> >
> > ===================================================================
> > This file was not updated with the twelve changes commited earlier to
> > this file on the branch:
>
> How do you know this? The output of the status command is meaningless in
> this context. All it tells you is that the file has been modified, as a
> result of the merge command. Have you tried running 'cvs diff' for the
> file in question?

After committing the files after fixing merge conflicts in the merge sandbox, back to the repository, I used tkcvs to do diffs on this and other files from the merge sandbox against the head revisions in the repository, and these files were not committed.  
>
> --
> Jim

reply via email to

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