cURL Download CVS
Browse the Sources
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:firstname.lastname@example.org:/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:email@example.com:/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):
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
An example sync command line to run when you want to catch up would be:
rsync -rztpv --delete rsync://curl.haxx.se/curl-cvs/ curlWARNING: 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.