This is the mail archive of the
cygwin-xfree@cygwin.com
mailing list for the Cygwin XFree86 project.
[Fwd: Re: Grabbing XFree86.org's xc/ tree using cvsup]
- From: Harold L Hunt II <huntharo at msu dot edu>
- To: cygwin-xfree at cygwin dot com
- Date: Sun, 02 Nov 2003 19:01:19 -0500
- Subject: [Fwd: Re: Grabbing XFree86.org's xc/ tree using cvsup]
- Reply-to: cygwin-xfree at cygwin dot com
This is from Mike Harris. He sent it to this list but he isn't on the
list, so it looks like it got rejected.
Harold
-------- Original Message --------
Subject: Re: Grabbing XFree86.org's xc/ tree using cvsup
Date: Sun, 2 Nov 2003 16:46:34 -0500 (EST)
From: Mike A. Harris <mharris@www.linux.org.uk>
To: Harold L Hunt II <huntharo@msu.edu>
CC: cygwin-xfree@cygwin.com, xserver@pdx.freedesktop.org
References: <3FA439E8.4020601@msu.edu>
On Sat, 1 Nov 2003, Harold L Hunt II wrote:
I am looking into how to import the XFree86.org xc/ tree into
freedesktop.org. It looks like cvsup is the way to go here, since it
mirrors the actual repository instead of grabbing a snapshot of the
repository.
This can be used to mirror the repository for read-only access to
an alternative to the master, and works great. I use cvsup to
mirror the repo locally also.
My question is: should I tell cvsup to drop the tree directly into
/home/cvs, or should I pull the tree into my home directory, then copy
it into /home/cvs?
I mirror it to /srv/cvs/cvsup myself, but have made thosed dirs
group cvs, and have myself as a member of the group. Again this
is locally on my workstation.
It sort of seems unwise to drop the tree directly into /home/cvs,
especially since cvsup needs to keep some state files (which I would
most likely put in /home/harold/xc/sup) that imply that only one person
would be able to make changes to the cvsup mirror.
Another thing to keep in mind is how we want to do development. It has
been suggested that we keep the HEAD branch in sync with XFree86.org and
that we do our development on another branch. The question here is
whether cvsup can preserve a local branch of the code and still be used
to sync with XFree86.org. I doubt that this is the case, since cvsup is
essentially mirroring the files, not branches/tags/etc. Does this mean
that we must manually track XFree86.org and apply their patches after
the initial import?
This is not possible. The cvsup mirrored repository is
read-write, however as soon as the next cvsup cronjob runs, it
syncronizes your cvsup repository with the master, which includes
destroying all of your modifications.
I would appreciate any input on this. Let me be the first to
admit that I am not a CVS administrator. I want to get this
tree setup quickly so that Alexander Gottwald (ago), Kensuke
Matsuzaki (zakki), and myself can quickly resume our development
on Cygwin/X. Another goal is for the xc/ tree to be usable by
others that wish to develop on an old-style xc/ tree outside of
XFree86.org.
My recommendation is for freedesktop.org to set up a single cvsup
mirrored XFree86 repository which is globally available to all
projects hosted on fd.o. Anyone can set it up, and it should be
ran by the system cron at least once a day IMHO, so not in a user
account. That way it's ultrafast to generate diffs, rdiffs, do
checkouts of XFree86 trees, and any other work with their
repository, with no network latency on the local box. That's how
I use it locally at home here and it is a godsend.
For importing the xc repository however, I recommend taking the
CVSUP mirrored repository, and copying the entire subdirectory
heirarchy of the repo to the real CVS repository location, then
running a perl script to change all of the CVS roots throughout
the tree if necessary. This repository should then not ever have
cvsup executed on it again or all changes will be blown away.
Developers working on this tree (or multiple trees started like
this) are free to make branches, etc. In order to keep the tree
in sync with XFree86 CVS, someone would need to either manually
check in XFree86 changes, or set up automated checkins.. The
problem with automated checkins however is that occasionally they
_will_ fail. Network dropout, disk full, overlapping cvs commits
that need manual handwork, and other scenarios.
It'll be very little work to copy the repo and start using it
for development, but a lot of work to maintain the entire tree
and keep it current with XFree86.org changes.
Hope this helps.
--
Mike A. Harris
_______________________________________________
Xserver mailing list
Xserver@pdx.freedesktop.org
http://pdx.freedesktop.org/cgi-bin/mailman/listinfo/xserver