In order to form a more perfect union...
So that we can all work together in the most productive way, all developers
working on the code in CVS should follow the following guidelines.
- You break it, you fix it. If you break something that was working before
you checked in your code, it's your responsability to get it working again.
If you ask the other person real nicely, maybe they'll help you, but it is
your responsability.
- Try to keep all your changes limited to the specific video card area you
are working on.
[servGL/hwglx/XXX]
- Peoples interests change. Workloads change. So if you have code for the
card you are working on that is an improvement on what is in CVS already,
feel good about checking it in. If it doesnt break anything, and adds/fixes
something, it's a good thing to add to the repository.
If you're working on something complex, and you want something committed as an
intermediate step, then it might be okay to commit what you have. But try not
to commit anything that is completely broken. At minimum, check in something
that is partially working, with clear comments about "this isnt working yet,
but this is what I'm in the process of doing to get there".
- If you DO want to change something in the shared area, (as opposed to
something inside servGL/hwglx/yourdrv) discuss with other
developers before checking it in. Ideally, have your changes verified as
okay on two or more different cards, before doing the checkin.
Tags
Ideally, there should be a cvs tag for each card that represents the current
"best stable code" for the card. This serves as a sort of snapshot release
mechanism.
Ideally, new code should be committed to the regular head, tested for a while,
and then after burn-in, the tag should be updated.
CVS hint: do not use the tag for checking out things for development. CVS will put you
in "sticky" mode. For your own sanity, you should probably only check out tagged
source to a new scratch directory, and remove that tree when you are done verifying
or comparing source.
Proposed tag naming scheme: yoursourceforgeid-YYYYMMDD
EG: theferret-20030215
Developer CVS access
The easist way to do official CVS checkin/checkout operations is to make
an alias or shellscript that does the following:
export CVS_RSH=ssh
cvs -z3 -d:ext:yourlogin@cvs.utah-glx.sourceforge.net:/cvsroot/utah-glx $@
Remember, 'glx-xf4 ' is the top level for the
xfree4 version of the code. So you probably want to just check out the
glx-xf4 directory, and forget about the other stuff.
Dont forget to keep reading the utah-glx-dev mailing list.
|