Eggs hosted in svn (Subversion)

For historical reasons, some CHICKEN eggs are hosted in the CHICKEN's central Subversion repository (the same repository which hosts this wiki).

The use of the Subversion repository for hosting eggs is deprecated, but some eggs maintained by the CHICKEN core team are still there for convenience.

To check out a copy of the source code of eggs hosted in the Subversion repository, you'll need a subversion client (usually installed as a command line tool called svn). See Subversion's official web site for more information.

Quick subversion checkout how-to

Here's a very simplified set of tips on how to obtain the source code of eggs hosted in the CHICKEN's Subversion repository.

Some notes regarding the organization of the Subversion repository:

 releases/
   <CHICKEN major version>/
     <egg>/
       tags/
         <egg release 1>/
         ...
         <egg release n>
       trunk/

Where:

Example:

   release/5/object-evict
   ├── tags
   │   ├── 0.1
   │   │   ├── object-evict.egg
   │   │   ├── object-evict.inline
   │   │   ├── object-evict.scm
   │   │   ├── object-evict.types
   │   │   └── tests
   │   │       └── run.scm
   │   └── 0.1.1
   │       ├── object-evict.egg
   │       ├── object-evict.scm
   │       ├── object-evict.types
   │       └── tests
   │           └── run.scm
   └── trunk
       ├── object-evict.egg
       ├── object-evict.scm
       ├── object-evict.types
       └── tests
           └── run.scm

The following sections show examples on typical tasks (using the object-evict egg for CHICKEN 5 as example).

Checking out the subtree of an egg

The following command will check out the entire subtree of an egg for a CHICKEN major version:

 $ svn co --username anonymous --password "" https://code.call-cc.org/svn/chicken-eggs/release/5/object-evict

Checking out the development branch of an egg

The development branch in Subversion parlance is called trunk (normally equivalent to the master branch in git speak).

Here's an example on how to check out the source of the trunk branch of object-evict:

 $ svn co --username anonymous --password "" https://code.call-cc.org/svn/chicken-eggs/release/5/object-evict/trunk object-evict

Migrating to git

Here's an example of how to check out the entire history of object-evict:

 $ mkdir path/to/object-evict
 $ cd path/to/object-evict
 $ git svn clone https://code.call-cc.org/svn/chicken-eggs/release/5/object-evict --stdlayout .