Subversion

Adding an external repository

On this page

Still need help?

The Atlassian Community is here for you.

Ask the community

When adding or managing a SVN (Subversion) repository, you can:

There are also the following SVN-specific actions:

On this page:

Requirements

It is particularly important that you set up the correct branch and tag structure for your Subversion repositories. If Fisheye does not know which files are tags and branches, it will treat all files as trunk files. This can significantly increase the effective size of your repository. This will increase initial scan time and impact runtime performance. Please refer to the instructions on tag and branch configuration.
In the majority of cases, indexing a small repository shouldn't take hours, and certainly not days. However, if you have a giant repository, have a slow remote host, you're using HTTP or HTTPS protocols, or if there is a problem with the symbolic setup of your repository, it could potentially take hours or even days. If in doubt, schedule the indexing to run over a weekend or extended maintenance period.

Using the 'file://' protocol to access your Subversion repository can be much faster than the other network protocols if your repository is on a local disk on the same server as Fisheye.

tip/resting Created with Sketch.

Knowledge Base

You may find useful information in either the Fisheye Subversion FAQ or the Subversion integration section of the Fisheye Knowledge Base.

SVN repository setup

  1. Click the 'cog' menu in the Fisheye header, and choose Administration (you'll need to be logged in as an administrator to see this link).
  2. Click Repositories (under 'Repository Settings').
  3. Click Add repository.
  4. Complete the wizard:

Screenshots: Adding a SVN repository

 

Setting

Description

Repository Type

Choose Subversion.

Display Name

A name for this repository. The name may contain alphanumeric, underscore, '-' or '.' characters and its length must not exceed 100 characters.

(info) Note that a repository name is different from its key. See Renaming a repository for details. 

Description

A short description of this repository.

SVN URL

The Subversion Repository Root URL to your repository, such as svn://svn.foo.com or file:///var/svn. If you are not sure what your repository root is, check the section below "Finding your Repository Root".
(Please note that file protocol performs the fastest followed by svn and lastly by http/s. Therefore where possible please use the file protocol.)

Path

The sub-tree within your repository that Fisheye should display. If this value is '.' (or empty), then the whole repository will be shown.

Username/Password

The credentials to use if your repository requires authentication. See also SVN Authentication Issues.

Store Diff Info

Enable this option if you are using the Subversion or Perforce SCM systems and making use of per-author line counts. Otherwise, enabling this option is not necessary. Read more information

Enable Repository After Adding

Controls whether Fisheye will immediately enable this repository, which starts the initial scan. If you wish to do some further configuration before the scan starts, then do not check. You can enable a repository later from the repository list.

 

Once the repository is added you can click the repository name on the 'Repositories' screen to configure the following settings:

SettingDescription

Block Size

Controls how many revisions Fisheye will pull down from the repository in one batch. Larger values can reduce the time it takes for Fisheye to scan your repository for changes, but use more memory. Smaller values can reduce the amount of memory Fisheye uses during scans. The default is 400. The minimum being 1. This field only accepts positive whole numbers. Requires a repository restart.

SVN Operation Timeout

Sets the timeout value that Fisheye imposes on Subversion operations. Operations which exceed this value are terminated. The default for operations is 1 hour. It can be changed to a different interval, for example: "2 days", "10 hours", or "20 minutes".

The library that Fisheye/Crucible uses (SVNKit) for SVN integration defines a timeout of 60 minutes by default if the property http-timeout is not defined in the Subversion configuration. This property defines the time to wait for a server response and terminates the HTTP call if it exceeds the timeout.

See this KB for more information: SVN operations taking longer than an hour time out

Throttle connections-per-sec

If set, this allows Fisheye to throttle how many connections it makes per second to the SVN server. Many systems use inetd/xinetd to service the svnserve protocol. xinetd has, by default, an incoming connection limit which can cause Fisheye to disrupt other svnserve-based connections. The default is blank (do not throttle).

Charset

The character set used to interpret and display text files.

Access Code

The access code for the fisheye.access property on the server. See also Subversion fisheye.access.

MD5 Access Code

The MD5 sum of the above Access Code. See also Subversion fisheye.access. (This field only appears if Access Code is set.)

Set Access Property Command

The Subversion command to set the fisheye.access property to grant Fisheye access if necessary. See also Subversion fisheye.access. (This field only appears if Access Code is set.)

Start Revision

If set, the revision number from which Fisheye will start indexing the repository. The default is to start scanning from the first revision in the repository.

Initial Import

When a Start Revision is set, this setting controls how Fisheye establishes the initial state of the repository.
Do not import means that Fisheye will only process the revisions from the start revision onwards. The repository state prior to this revision is ignored.
Import without tag information means that Fisheye will import the repository content as it existed one revision prior to the start revision. Fisheye will create a single synthetic revision to hold the initial state. The comment associated with this revision will be 'Created by Fisheye for initial repository import'. Tags created prior to the start revision are ignored. Due to the synthetic commit the "Last commit" date will display the date "31 Dec 69" in statistics panels.

Follow Base Moves

If you have changed the location of your repository in your Subversion server over time, set this option to true. Doing so will cause Fisheye to index your repository's full history across all its locations within your server.

Use Built-in Symbolic Rules

Determines how Fisheye attempts to understand the tag and branch structure of your Subversion repository. Read more information.

If Fisheye returns the error 'Authentication Canceled', this may simply indicate an incorrect username or password.

Finding your repository root

Run the following command:

svn info SVN_URL

Where SVN_URL is the complete URL of the repository you want to add.

You will get something like the following:

>svn info http://svn.example.com/svn5/

Path: svn5
URL: http://svn.example.com/svn5/
Repository Root: http://svn.example.com/
Repository UUID: ce062a09-193b-427a-a7b3-a85007076e5d
Revision: 83
Node Kind: directory
Last Changed Author: ryan
Last Changed Rev: 83
Last Changed Date: 2009-05-07 10:48:41 +1000 (Thu, 07 May 2009)

Next to "Repository Root" is the URL you should define as your repository root. The path will be whatever is remaining.

Last modified on Oct 25, 2018

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.