The Bioconductor project is maintained in a Subversion source control system.
Read-only access to our svn repository is available with
To check out (co) all packages in the software repository (~3 GB) use:
svn co https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks Rpacks-devel
This creates a copy of all packages on your local machine. Specify a name other than "Rpacks-devel" if you want a top-level directory with different name.
To check out the code for the Biobase package use:
svn co https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/Biobase
The check out command uses the directory name in the repository if the destination name is not specified.
The root of the Bioconductor experiment data svn repository is https://hedgehog.fhcrc.org/bioc-data/trunk/experiment. Experiment data packages are divided into two components: pkgs (containing all but the data files) and data_store (containing the data files). To obtain a specific experiment data package first check out the package infrastructure then fold the data in using the Python script https://hedgehog.fhcrc.org/bioc-data/trunk/experiment/pkgs/add_data.py on the exported package. Here are the commands to check out the affydata package:
svn export https://hedgehog.fhcrc.org/bioc-data/trunk/experiment/pkgs/add_data.py svn co https://hedgehog.fhcrc.org/bioc-data/trunk/experiment/pkgs/affydata ./add_data.py affydata
svn updatewill update your check out from the server to get any new changes.
svn addfoo will add foo to the repository (note that unlike CVS this is a recursive add. Use the -N switch if you don't want this behavior).
svn deletefoo will delete foo. If foo is a file it is removed from your local copy as well. If it is a directory it is not but is scheduled for deletion.
svn copyfoo bar will make a copy of foo named bar and copy the history.
svn movefoo bar is the same as copy except foo gets deleted.
svn commitcommits your changes. Much like CVS you can choose to specify a file (or files) or leave it blank and it will commit everything.
Some other commands:
svn statusfoo will show you information about the file, particularly changes that you've made.
svn difffoo will show you the exact diff of your changes to the server
svn revertfoo will bring you back to the server copy.
svn logfoo will show the log history for that file.
Many of these commands have additional arguments. Get help on diff, for example, like this:
svn help diff
The Subversion Book has more complete documentation and examples for all the commands and options.
If you wish to have a change made in the devel branch (aka the trunk) also available in the current release branch, you first need to take note of the revision number from your commit, for example,
$ svn commit -m"Sample commit" Adding Rpacks\Biobase\DESCRIPTION Sending Rpacks\Biobase\DESCRIPTION Transmitting file data .. Committed revision 140.
was revision 140. The changeset you want is -r 139:140, i.e. the changes between r139 and r140.
You'll need to have checked out the branches subdirectory, which is separate from trunk. If you have only checked out the madman subdirectory previously, you'll need to also check out the appropriate branch subdirectory:
svn co https://hedgehog.fhcrc.org/bioconductor/branches/RELEASE_2_6/madman/Rpacks
Merge your changes from the trunk to the release branch, check and fix any conflicts, and commit. So, from your release branch directory (e.g. RELEASE_2_6/madman/Rpacks):
svn merge -r 139:140 https://hedgehog.fhcrc.org/gentleman/bioconductor/trunk/madman/Rpacks svn status # Look for C, indicating a conflict # fix conflicts... (remember to use svn resolve for each) svn commit -m "merged -r139:140 from trunk"
Here is a list of possible issues:
Unrecognized URL scheme:
If you see "unrecognized URL scheme" when trying to access the
repository, it may indicate that your svn client does not support
HTTPS. You can verify the supported "modes" by examining the
svn --version. If you do not see support for HTTPS,
you will need to upgrade your client.
Username or password not recognized:
Most usernames we issue are in the form of an email address. It may
help to quote the user name:
--username="email@example.com". Try double and single quotes.
Need help arranging access to your package? Use contact information for new package submission.
Still unresolved? Ask on the bioc-devel mailing list.