This is the mail archive of the cygwin-xfree@cygwin.com mailing list for the Cygwin XFree86 project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: 4.3.0.1 Possible Release and Keeping XFree86 CVS Up to Date


Brian,

Brian Ford wrote:

On Wed, 30 Jul 2003, Alexander Gottwald wrote:


On Tue, 29 Jul 2003, Harold L Hunt II wrote:


As for keeping the XFree86 CVS tree up to date, am I right that I
should be sending patches against XFree86 CVS xf-4_3-branch, instead
of the xf-4_3_0_1 snapshot?  Could I do this with:

cd xc/programs/Xserver/hw
cvs diff -U3 -r xf-4_3-branch xwin > xwin.diff

-U3 is the same as just -u.  Cygwin, and most other projects (I don't know
about XFree86 for sure), usually also prefer -p to print C function
names in the diff header.

-p, -U3, and -u weren't really the question here, but thanks for the tips anyway.


So:

cvs diff -up -r xf-4_3-branch xwin > xwin.diff

But, if your sources are already at the head of the branch (like they
should be to do this), the -r xf-4_3-branch is redundant.

Head of the branch as in I checked out using:


cvs -z3 checkout -r xf-4_3-branch xc

?

> If your
sources are on the branch, but out of date, this command would include
newer changes that have already been committed in with yours.

I always do a 'cvs update' before diffing for stuff that I am sending to xfree86.org, specifically so that I don't keep sending them the same things over and over again.


Since that is
probably not what you or they want, here too it is better to leave off
the -r xf-4_3-branch.  If your sources are not on the branch at all, this
is mostly just nonsense.

All that said, if you are the only one modifying xwin, it probably just
doesn't matter.


the xf-4_3_0_1 snapshot is part of the xf-4_3 branch. So if you checkout
the snapshot, you have the latest from the xf-4_3 branch. A simple cvs
diff will create a diff against the xf-4_3 branch.


I disagree. The snapshot is a point in time on the branch. It may not be, and probably isn't the latest. A simple cvs diff will create a diff against the snapshot, not the branch.


You are both referring to a diff against an -r xf-4_3_0_1 checkout, not against a -r xf-4_3-branch checkout, right?


Note that I have about 5 copies of the xc module, one for HEAD and a bunch of others for different branches/tags.

I would suggest just keeping your sources on the head of the branch.  The
only advantage to using a snapshot tag is reproduceability.  I don't think
snapshots have any sort of stability implied.

Is the head of the branch xf-4_3-branch? I assume that is what you mean.




The main question here is can I make diffs against the specified branch
rather than the branch that I have locally?  I assume the answer is
yes, but some confirmation from others before I waste time looking into
it would be helpful.

Yes you can, but the result may be difficult to interpret.  As I said
before, you might get lucky just because you are the only one making
changes.  This is probably why they often have to hand apply your
patches, though.


Who has to apply my patches by hand? This has never been brought to my attention. Who is "they"? Are you referring to the patches I send to xfree86.org or the patch sets that I distribute with Server Test Series releases? The latter are meant to be applied by hand and only server to highlight what has changed to those that are keeping track.



I think cvs diff -r tagname will do this. But it also includes all
changes made in both branches.


I agree. If you are on branch x, and you cvs diff with branch y, you obviously get their difference. If you apply that patch to branch y, branch y ends up identical to branch x. That might revert valid changes on branch y, and thus is not a good idea.


So my question is, can I make patches for the xf-4_3-branch based off a HEAD checkout without actually having to pull the xf-4_3-branch tree? If so, then I can just create patches to keep the xf-4_3-branch up to date without actually having a copy of it on my disk. This would be convenient.


I don't know if I have made things clearer, or just added to the
confusion.  I am pretty well versed in cvs, though.  So I can attempt more
clarification if needed.

I think that it helped. My main problem is that I just haven't spent much time with CVS, getting to know how it works etc. What you have said has added to my overall knowledge of how CVS works, as well as to some specifics related to our project.


Thanks for your help,

Harold


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]