Downloads (PDF, HTML & XML formats)
[Crucible Knowledge Base]
Documentation for Crucible 3.0.x. Documentation for other versions is available too.
This page describes how to use Crucible's native repository access to connect to an external Git repository. This native access uses a FishEye component (without requiring a FishEye license) which is why the description below refers to FishEye in places. See What happens if I decide to stop using FishEye with Crucible for more information.
Crucible interacts with Git repositories by executing the Git command in a separate process. Hence, the server running Crucible needs to have Git installed. Crucible indexes Git repositories by making a private, bare clone of your repository within Crucible's cache area. It uses this private clone for most Git operations.
See the Supported Platforms page for the version of Git that is required by the server running Crucible.
To add an external Git repository to Fisheye:
Field | Description |
---|---|
Repository Type | Select Git. |
Display Name | A name for this repository. The name may contain alphanumeric, underscore, '-' or '.' characters and its length must not exceed 100 characters. Note that a repository name is different from its key. See Renaming a repository for details. |
Description | Enter a short description of this repository. |
Field | Description |
---|---|
Repository Location | Enter the URL describing the Git repository location. Fisheye will clone this repository for indexing purposes. You can use any URL recognized by Git itself. Fisheye recognizes the following URL's: git://server_name[:port]/path_to_repository http://server_name[:port]/path_to_repository https://server_name[:port]/path_to_repository ssh://server_name[:port]/path_to_repository file://[hostname]/path_to_repository Do not use spaces in your URL. |
Path | (optional) Enter the path within the Git repository that you want Fisheye to index. This lets you limit Fisheye to indexing a subset of the complete Git repository. |
Authentication Style | Choose the desired authentication style for your repository — No authentication, Generate key pair for SSH, Upload private key for SSH or Password for http(s). Please refer to Authentication for more information. |
Block Size | (optional) Enter how many commits you want Fisheye to process in one batch. Larger values require more memory and increase the amount of work Fisheye commits to the database in a single operation. The default is 400. The minimum being 1. This field only accepts positive whole numbers. Requires a repository restart. |
Command Timeout | (optional) Enter the time that a single Git command is allowed to take to execute. Any command that exceeds this time is terminated and the operation will fail. |
Rename Detection | (optional) Select which Git rename detection strategy Fisheye will use to detect copy and move operations within the repository. Please refer to the Git documentation for more information. |
Field | Description |
---|---|
Store Diff Info | Check this if you want Fisheye to cache information about file diffs in its database. This is required for some Fisheye features. See Configuring Repository Details for more information on this setting. |
Enable Repository After Adding | Check this to enable the repository after adding (i.e. when you click the Add button). |
Indexing of a Git repository can be slow when new branches are pushed. Performance in such cases can be improved by setting a command line option for Fisheye. See this KB page for more information.
Fisheye uses GIT_SSH variable to call fe-ssh.sh / fe-ssh.bat wrapper and to pass SSH key for the git process. Make sure that you don't have the GIT_SSH_COMMAND variable defined, which takes precedence over GIT_SSH.