Programming Howto:SVN Client Setup

From BCI2000 Wiki
Revision as of 20:00, 16 July 2014 by Gmilsap (talk | contribs) (Checking out older versions)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Setting up TortoiseSVN to access the BCI2000 code repository

To set up TortoiseSVN and download the BCI2000 source code to your computer, follow these steps:

  • Download the latest stable version from, and execute the installer program. This page has been written for version 1.40, but should be rather independent of TortoiseSVN's version number.
  • Create or pick an empty folder located on your machine’s harddrive. This will hold your working copy of the BCI2000 source tree, in an automatically created subfolder called "BCI2000."
  • Right-click the folder you picked in the last step. From the context menu, choose the "SVN Checkout..." option – a dialog window appears.
  • In the dialog window, enter the repository URL:, choose "HEAD revision" and "include externals". Then, click OK.
  • You will be prompted for your user name and password. This account is the same that you use to log into Trac and into this Wiki.

Checking out older versions

If you think that the current version of BCI2000 is not working properly, or would like to work with an older version for some other reason, you should first check whether one of the releases in suits you needs.

Otherwise, to obtain a revision that is newer than the latest binary release, you will need to do a checkout of

In both cases, you may enter a "Revision number" into the checkout dialog in order to obtain an older revision. The "Show Log" button will provide you with an overview of the latest changes and their associated revision numbers.

Working on Branches

Branches are versions of the source code that are developed in parallel to the main code version, e.g. to incorporate new features without affecting the stable version that is intended for end users. To checkout a branch called "myBranch", the repository URL would be: Otherwise, the checkout process remains the same.


  • Symptom: When trying to checkout, update, or commit, you get an error message: "PROPFIND request failed", "OPTIONS request failed", "could not connect to server", or the like.
    • Cause: Quite likely, you are behind a firewall, and internet access is over a proxy server.
    • Fix: To configure TortoiseSVN for use with a proxy server, right-click your desktop, choose TortoiseSVN->Settings->Network, check "Enable Proxy" and enter the appropriate information. If unsure, contact your local system administrator.
  • Symptom: You configured TortoiseSVN for use with a proxy server as described above. Now, checking out works fine, however on updates or commits, you get strange errors about failed requests.
    • Cause: Your proxy server is not forwarding SVN's WebDAV requests correctly.
    • Fix: To keep the proxy from interfering with the protocol, change your setup to use an encrypted connection:
  • Right-click on your source tree's top folder, choose TortoiseSVN->Relocate.
  • In the "to URL" edit field, modify http:// to read https://.
  • On the first connection, TortoiseSVN will display a warning message:
Click "Accept permanently" to continue.

See also

Programming Howto:Using TortoiseSVN