Skip to end of metadata
Go to start of metadata
On Saturday, January 28th, we will be converting the "Chombo"
repository from CVS to SVN. In addition, we will be
moving it from "anag.lbl.gov" to "anag-repo.lbl.gov" and your access
to this repository will be changing. By default, you will have
read-only access to the current versions of a subset of "Chombo". This
subset will be the same as the subset of "Chombo" that is used for
releases BUT you will have access to
the current SVN versions of this subset.
We are doing this for several reasons:
- We need to have a better understanding of who has what type of
access to this repository and have this documented and maintained.
- Collaborators need a clear idea of who has access to the code(s)
are developing and the parts of "Chombo" that are a
part of their efforts.
- We want develop new functionality in "Chombo" without immediately
making is visible to everyone so that we can make it available when it
is working and we feel the APIs are well defined.
- Collaborators will, nominally, be using the release portion of
"Chombo" so it will be easier for them to release their code(s) so they
correspond to a "Chombo" release.
- We will be able to make more frequent releases of "Chombo" that
can be coordinated with all our collaborators.
In addition, we will be allowing additional read and read/write access
on a case by case basis.
We DON'T want to impede the ability of anyone collaborating with us.
To that end,
we are announcing this change now so you can discuss this with your
ANAG collaborators and they can make sure you get the necessary access
to continue your collaboration without difficulty. If it's unclear who
you should discuss this with, please contact Phil Colella,
The "release subset" has not been entirely defined yet (and your input
and needs with help finalize the definition). It will include
substantial parts of "Chombo/lib" (including "mk", some of "util", and
substantial parts of "lib" and "test") and very limited parts of
"Chombo/example". There will likely be code movement from
"Chombo/example" to release portions of "Chombo" and/or collaboration
development repositories (separate from "Chombo").
Also, this is part of a larger project to move all active repositories
on "anag.lbl.gov" from CVS to SVN (if needed) and relocate them to
"anag-repo.lbl.gov". We plan to complete this within the next month or
so and then remove access to "anag.lbl.gov". We are also planning to
start using a bug/feature reporting/tracking mechanism so that everyone
using "Chombo" can submit problems, changes, improvements, etc.
As part of the move of "Chombo", you should commit all
outstanding changes that you
want converted to SVN before January 28th and you will have to do a
fresh SVN checkout of the converted "Chombo". CVS and
SVN are similar and use similar commands but they are not identical.
Below are some instructions/suggestions for transitioning from the CVS
the SVN versions of the repository and some general things to know
Starting January 17th (next Tuesday) and before January 28th, you
should register for "https" access by going to
and filling out the registration form.
Please include your e-mail address so we can contact you as needed and
can added you to e-mail notification for the portion of the
repository you are accessing. Also, put "collaborator" under the
After you have done this, please
try the test:
>svn --non-interactive --trust-server-cert --username
USERNAME --password PASSWORD ls https://anag-repo.lbl.gov/svn/testrepo
where "USERNAME" is your user name and "PASSWORD" is your password your
registered on "anag-repo". This should result in a list of the top
directory of the "testrepo" repository.
If this works, you should be set to access "Chombo"
after the transition. If this doesn't work (or you have additional
questions) please contact Noel Keen, NDKeen@lbl.gov
Detailed Time-line and Instructions
- Confirm that you can access "testrepo" via "https" (see above)
before Saturday, January 28th.
- Commit all outstanding changes to the CVS version of "Chombo" by
midnight PST on Friday, January 27th. If you don't
commit changes, the changes can still be done in the SVN checkout and
- "anag.lbl.gov" and "anag-repo.lbl.gov" will be unavailable for
some portion of Saturday, January 28th. Assume they are not available
until we send out e-mail that they are available.
- Move your local CVS Chombo directory to another name (e.g., "mv
Chombo Chombo-CVS") and checkout a clean version of the new SVN
>svn --non-interactive --trust-server-cert --username
USERNAME --password PASSWORD co https://anag-repo.lbl.gov/svn/Chombo/trunk
NOTE the "/trunk" after ".../svnroot/Chombo" above. This is
IMPORTANT. If it isn't there, you will checkout the Chombo trunk and
ALL THE BRANCHES!
At this point, you should have a clean SVN version of
Although the CVS version of the "Chombo" repository
will continue to exist (with different names), it shouldn't be needed
(all the branches, log messages, etc. will be propagated from CVS to
SVN). It will be renamed and should be thought of as read-only and
only in case of
emegency. Also, once
the other repositories are migrated from "anag" to "anag-repo", access
to the old CVS version of "Chombo" will stop.
A few useful things to know about SVN
- The "cvs" and "svn" commands are very similar and, in many cases,
do the same thing functionally.
- SVN allows you to treat directories like regular files - you can
create them, rename them, and remove them as needed at any time. This
should allow us to clean up a lot of directory cruft that resulted
because CVS didn't allow this.
- The SVN trunk has the notion a HEAD and a BASE revision whereas
CVS only has a HEAD. Under SVN, the HEAD is the same as in CVS - it is
the last version on the trunk and is stored remotely where the SVN
repository lives. The BASE, is a local version that represents the
last time you did a "svn update" but doesn't reflect any changes other
users made to the trunk since your last "svn update".
Why do you care? When you do an "svn diff FILE", the
default is to difference the BASE version against the current copy of
"FILE". If you want the same behavior as CVS (i.e., you want your
local changes diff'ed against any changes to the trunk that have been
committed by other users), you need to type "svn diff -r HEAD FILE".
This can also come up in other contexts.
Basically, SVN uses BASE as the default where CVS uses HEAD.