[Top][All Lists]

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

Re: am I misunderstanding what HEAD refers to?

From: Ted Stern
Subject: Re: am I misunderstanding what HEAD refers to?
Date: Fri, 05 Oct 2007 11:54:07 -0700
User-agent: Gnus/5.110007 (No Gnus v0.7) Emacs/22.1.50 (gnu/linux)

On 05 Oct 2007 11:04:38 -0700, Dennis Jones wrote:
> "Ted Stern" <address@hidden> wrote in message 
> news:address@hidden
>> At this point, I want to check to make sure no changes have gone into
>> the trunk between BRANCHNAME_MERGE_HEAD and right now.
>> So my first naive thought is to do a diff.  Note that I'm currently
>> sitting in my branchname sandbox:
>>    cvs diff -r BRANCHNAME_MERGE_HEAD -r HEAD 1>stdout 2>stderr
> I'm not sure why nobody eslse has suggested this, but since 
> BRANCHNAME_MERGE_HEAD always refers to a point on the trunk and you want to 
> diff the trunk, why not go to the trunk and do the diff from there?  IOW, 
> instead of sitting on your branch and trying to do the diff from there, just 
> switch over to the trunk and do it.  That way, HEAD will refer to the trunk 
> instead of the branch, and your diff should work as expected.
> Am I missing something?
> - Dennis 

Here's the issue.  We're trying to set up scripts to automate most
aspects of branching and merging for users who seldom use CVS.  And we
also want to provide a standardized front end so that we can
eventually switch to subversion without having a huge retraining time
for the users.

In this transitional period, we want to keep the users from having to
wait while a thousand files get tagged or updated.  And since a user
will typically be working on their own branch, we want to avoid
requiring them to have a trunk (or parent branch) checkout in addition
to the bug checkout.

When working properly, cvs diff is a pretty fast way to detect
differences between branches, and is also easy to parse.

To do what you suggest, the user would have to do a 'cvs update -dA'
[or 'cvs update -d -r parentbranch' if not branching from the trunk].
This can take almost as long as tagging.  Then they would have to 'cvs
update -d -r branchname' to get back to the branch checkout they were
working on.  The other question is whether HEAD will mean what _YOU_
think it means, even when you are in a trunk checkout.  If it always
points to the most recently checked in version, even if it is not on
the current branch, then the same problem will still apply.

 dodecatheon at gmail dot com
 Frango ut patefaciam -- I break so that I may reveal

reply via email to

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