"Cameron, Steve" wrote:
> 
> Deever, Chris C. wrote:
> 
> > When comparing a branch agaist the base trunk, I've noticed a scenario
> > where
> > WinCVS 1.1b13 (client) and CVS 1.10.6 (server) miss some of the
> > differences
> > in the base trunk.  In all developement branches, all changes are
> > comitted.
> >
> > When I go to the root directory of the base trunk and diff against the
> > branch it finds all of the changes.  However, when I go the the root
> > working
> > directory of the branch and compare it to "HEAD" it finds all but two
> > changes.
>         [smc]  You are aware that "cvs diff" treats HEAD differently than
> all other
>         CVS commands, right?  "cvs diff" treats "HEAD" to mean the head
> revision
>         of the current branch (what you have checked out), if I recall
> correctly, while
>         the other commands (notably "cvs update") treat HEAD to mean the
> head
>         revision of the trunk  There's a test case for this in sanity.sh
> that makes
>         sure it's so.  (it may be a feature, not a bug that you're seeing.)


Hmm ... while that might be the design intent my observations are that even
this is broken:

pw.notus.1783> cvs -n update
? .d
? ghr
? ghr_add
? ghr_app_test
? ghr_app_test_db
? ghr_db_test
? ghr_dbtool
? ghr_dump
? ghr_test
? ghr_change
? ghr_test_hlr_id_search
? ghr_delete
? ghr_gen_hlr_sub
? ghr_query
? ghr_report
? ghr_update_sub
? ghr_verify
? ghr_load_db_data
? ghr_db_convert
? ghr_comp_test
? ghr_db_test_comp
cvs server: Updating .
pw.notus.1784> cvs diff -r HEAD|egrep diff
cvs server: Diffing .
diff -r1.4 -r1.2
cvs server: ghr_command.c no longer exists, no comparison available
diff -r1.10 -r1.9
diff -r1.3 -r1.2
cvs [diff aborted]: cannot open CVS/Root: Permission denied
pw.notus.1785> III
pw.notus.1785> pwd
pw.notus.1785> cvs diff -r b_V3_3_enh
? .d
? ghr
? ghr_add
? ghr_app_test
? ghr_app_test_db
? ghr_db_test
? ghr_dbtool
? ghr_dump
? ghr_test
? ghr_change
? ghr_test_hlr_id_search
? ghr_delete
? ghr_gen_hlr_sub
? ghr_query
? ghr_report
? ghr_update_sub
? ghr_verify
? ghr_load_db_data
? ghr_db_convert
? ghr_comp_test
? ghr_db_test_comp
cvs server: Diffing .
cvs server: ghr_command.c no longer exists, no comparison available
cvs [diff aborted]: cannot open CVS/Root: Permission denied
pw.notus.1786>


If what you are saying is true then the diff -r HEAD should produce no
output - or is it me that is confused?


> 
>         I wrote a patch some time ago to make "cvs diff" treat HEAD the same
> as
>         all the other cvs commands do, which is the only thing that really
> makes
>         any sense as far as I'm concerned, but, there are other opinions on
> that
>         topic.
> 
>         I was involved in some talk of investigating making all other
> commands treat
>         HEAD the way that "cvs diff" does as an alternate, (at the time, I
> thought it was just a matter
>         of calling "RCS_branch_head" instead of RCS_head, but, that's not
> really all
>         there is to it because RCS_branch_head takes an extra parameter
> which
>         cannot be known (in a way that I was able to figure out) in all the
> places
>         that RCS_head is used.  And, it's not clear to me that trying to do
> that is
>         not nonsensical, (to use the rare triple negative :-)
> 
>         This comes back to a discussion that's flared up on this list
> occasionally
>         lamenting the fact that there is no such thing as the equivalent of
> a branch tag
>         for the trunk.  (for a time it was thought that you could use "1"
> for this,
>         if I recall right, last time that came up, it was established that
> it doesn't work in
>         all cases.  And HEAD doesn't really work like a branch tag, not even
> 
>         considering its weirdness with "cvs diff")
> 
>         ....Anyway, if you search deja.com for subject "Alternate HEAD
> patch"
>         you'll find my patch, though perhaps not in the most convenient
> form.
>         That may make HEAD behave as you are expecting it to with "cvs diff"
> 
>         -- steve

-- 
Peter Wolfe                      Tel: (604) 303-2300
Telos Engineering Limited,       http://www.telostech.com
120 - 13120 Vanier Place,        FAX: (604) 276-0501
Richmond, BC, V6V 2J2.           email: [EMAIL PROTECTED]

Reply via email to