cURL cURL > Download > CVS

Browse the Sources

Browse the CVS Repository

Get the Sources

The curl sources are kept in a CVS repository. You can get the most recent curl source files from there at any time. CVS is the version control system we use for the curl project. All files in the release archive that aren't generated from other files are kept there, to allow full backtracking of older versions. To use CVS you need a CVS client, get yours from www.cvshome.org. Windows users might fancy TortoiseCVS or WinCvs.

This is mostly a feature for you who really want to have a peek in how the current development version looks like, and not if you just want to download a version to run. If you just want to download a tar or binary archive, go here.

If you want to use the CVS server, login:

  cvs -d :pserver:anonymous@cool.haxx.se:/cvsroot/curl login

When prompted for a password, just press enter. When logged in, checkout all the files in the curl respository:

  cvs -d :pserver:anonymous@cool.haxx.se:/cvsroot/curl co curl

Note that this will create a curl subdirectory.

If you at a later time want to get the updated set of files, just cd into this directory and run this command (there's no need for the -d then):

  cvs update

If a proxy, firewall or something else is preventing you from using CVS to get the latest sources, consider a daily snapshot.

Compile and Build the Sources

When you checkout the sources, you get a file named CVS-INFO in the source root that describes how to proceed to compile and build them.

Change the Sources

If you are about to do a lot of modifications, discuss it on the curl or libcurl mailing list in advance and we might give you write permission straight into the CVS!

Sync the repo

Advanced users may opt to rsync the entire CVS repository.

The repo exists at

         rsync://curl.haxx.se/curl-cvs

An example sync command line to run when you want to catch up would be:

         rsync -rztpv --delete rsync://curl.haxx.se/curl-cvs/ curl
WARNING: when you sync like this, your repo will be overwritten each time you sync so never ever try to commit anything to your local copy - if you're not prepared to loose it at next sync.