From 87ca217547869d4819bc691e9036f9fc54ca8a12 Mon Sep 17 00:00:00 2001 From: rrt Date: Mon, 23 Apr 2001 14:57:29 +0000 Subject: [PATCH] [project @ 2001-04-23 14:57:29 by rrt] This is now kept in the web site's CVS repo. --- docs/cvs-cheat-sheet.html | 352 --------------------------------------------- 1 file changed, 352 deletions(-) delete mode 100644 docs/cvs-cheat-sheet.html diff --git a/docs/cvs-cheat-sheet.html b/docs/cvs-cheat-sheet.html deleted file mode 100644 index 33f8aca..0000000 --- a/docs/cvs-cheat-sheet.html +++ /dev/null @@ -1,352 +0,0 @@ - - - - - - -Access To The GHC CVS Repository - - - - -

FP Tools CVS Cheat Sheet

- -

We use CVS (Concurrent Version System) to keep track of our sources for various -software projects. CVS lets several people work on the same software at the same time, -allowing changes to be checked in incrementally.

- -

Information on using CVS can be obtained from Cyclic -Software.

- -

This note is supposed to be a set of guidelines for how to use our CVS repository, and -will probably evolve in time. The main thing to remember is that most mistakes can be -undone, but if there's anything you're not sure about feel free to bug the local CVS -meister (namely Jeff Lewis).

- -

Contents - -

- -

Remote Read-only CVS Access

- -

Read-only access is available to anyone - there's no need to ask us first. To get -read-only access to our repository: - -

- -

The layout of our CVS repository is described below, under Using CVS -for the first time.

- -

With read-only CVS access you can do anything except commit changes to the repository. -You can make changes to your local tree, and still use CVS's merge facility to keep your -tree up to date, and you can generate patches using 'cvs diff' in order to send to us for -inclusion.

- -

Remote Read-Write CVS Access

- -

We generally supply read-write access to folk doing serious development on some part of -the source tree, when going through us would be a pain. If you're developing some feature, -or think you have the time and inclination to fix bugs in our sources, feel free to ask -for read-write access. There is a certain amount of responsibility that goes with commit -privileges; we are more likely to grant you access if you've demonstrated your competence -by sending us patches via mail in the past.

- -

To use remote CVS, you need to supply me with a username and -encrypted password. Once you've done that and the account on -cvs.haskell.org has been set up, you need to install ssh, which is relatively painless. Log -in to cvs.haskell.org, and set up your .ssh/authorized_keys -file to allow logins from your local machine without a password (the -ssh documentation has details on how to do this). Then, just - -

- -

The CVSROOT environment variable will be recorded in the checked-out tree, so -you don't need to set this every time either. Ignore the instructions for setting CVSROOT -below.

- - -

Caveats: - -

- -

Using CVS for the First Time

- - - -

Checking Out a Source Tree

- - - -

Committing Your Changes

- -

This is only if you have read-write access to the repository. For anoncvs users, CVS -will issue a "read-only repository" error if you try to commit changes. - -

- -

Updating Your Source Tree

- -

It can be tempting to cvs update just part of a source tree to bring in some changes -that someone else has made, or before committing your own changes. This is NOT -RECOMMENDED! Quite often changes in one part of the tree are dependent on changes in -another part of the tree (the mk/*.mk files are a good example where problems -crop up quite often). Having an inconsistent tree is a major cause of headaches.

- -

So, to avoid a lot of hassle, follow this recipe for updating your tree:

- -
$ cd fptools
-$ cvs update -Pd 2>&1 | tee log
- -

Look at the log file, and fix any conflicts (denoted by a 'C' in the first column). If -you're using multiple build trees, then for every build tree you have pointing at this -source tree, you need to update the links in case any new files have appeared:

- -
$ cd <build-tree>
-$ lndir <source-tree>
- -

Some files might have been removed, so you need to remove the links pointing to these -non-existent files:

- -
$ find . -xtype l -exec rm '{}' \;
- -

And finally, re-configure to take into accound any changes in mk/config.mk.in.

- -
$ ./configure
- -

To be *really* safe, you should do

- -
$ gmake boot && gmake all
- -

from the top-level, to update the dependencies and build any changed files.

- -

GHC Tag Policy

- -If you want to check out a particular version of GHC, you'll need to -know how we tag versions in the repository. The policy (as of 4.04) -is: - - - -So, to check out a fresh GHC 4.06 tree you would do: - -
-     $ cvs co -r ghc-4-06 fpconfig
-     $ cd fptools
-     $ cvs co -r ghc-4-06 ghc hslibs
-
- - -

General Hints

- - - -

Reporting Bugs in the CVS sources

- -

If you are reporting a bug or infelicity in the CVS version of -GHC, please send your message to

- - - - - - - - -
- cvs-ghc@haskell.org
- cvs-hslibs@haskell.org - (for hslibs/ stuff)
- cvs-nofib@haskell.org - (for nofib/ stuff)
- -

(not to glasgow-haskell-bugs). Two reasons:

- - - -

Please don't stop sending bug reports though. They are really useful.

- -
- -

Ok, that'll do for now. If there's anything else you'd like to see -in this file, just let us know.

- - - - - - - - -
Jeff Lewis
Simon Marlow
- - -- 1.7.10.4