The plugin is bundled in the latest since TeamCity 5.0 EAP.
This page contains information for those who need to use the plugin with TeamCity
Adds Git support.
Plugin Development Status
Early access program is open. Snapshot builds are available.
Everyone is encouraged to try the plugin, however issues can be uncovered.
TeamCity Versions Compatibility
The VCS is visible as "Git (JetBrains)" in VCS chooser to eliminate confusion with third-party plugin.
The implementation is powered by JGit. Remote run
Plugin is supported in IntelliJ IDEA and Eclipse, pre-tested commit is not yet supported in any of the IDEs.
The following protocols are supported for the server-side checkout mode:
- ssh: (e.g. firstname.lastname@example.org:repos/test.git, ssh://email@example.com/repos/test.git)
- git: (e.g. git://git.kernel.org/pub/scm/git/git.git)
- http: (e.g. http://git.somewhere.org/projects/test.git)
- file: (e.g. file:///c:/projects/myproject/.git)
- sftp: (not tested)
- amazon-s3: (not tested)
Agent Checkout Support
Only available since TeamCity 5.1.1.
The git plugin contains experimental support for agent-side checkout. Unlike the server-side support, this is implemented using native git binaries, so you need to have git installed on all the agents that you plan to use agent-side git checkout on.
Path to git executable can be specified in the VCS root settings, otherwise it will be searched for in the default installation locations, in the path specified by TEAMCITY_GIT_PATH environment variable or (since TeamCity 5.1.3) in system PATH.
Agent checkout has limited support for SSH. Currently you can use only "Default Private Key" authentication method.
Supported default installation locations:
- Windows (git.exe)
- C:\Program Files\Git\bin
- C:\Program Files (x86)\Git\bin
- Unix (git)
- Tagging is not supported over HTTP protocol (JGit limitation)
- For SSH to work you should have correctly configured
$HOME\.ssh-* Specify references to the keys in appropriate host sections (keys with passphrases do not work yet)
- You will need to specify "StrictHostKeyChecking" to "no" if you do not want for ssh to fail when connecting new hosts.
- The file could be used to specify host aliases
- Plugin creates temporary bare repositories in
~/.BuildServer/system/caches/gitthis repositories are not cleaned up automatically. This directory are shared for different VCS roots with the same URL. See teamcity.remote configuration property to see URL for which directory is used.
- java.lang.OutOfMemoryError while fetch repository. Usually happens when there are big files in repository. Currently jgit library loads file contents into the memory. To run fetch in separate process use property teamcity.git.fetch.separate.process.
described in the TeamCity documentation (Git).
Plugin is open-sourced and can be used as an example of TeamCity VCS support implementation. See the links below.
Plugin Development Status
Stable, production quality.
TeamCity 4.5.x Versions
If you want to use Git with TeamCity 4.5.x, you can download the plugin directly from the public TeamCity server: last build for TeamCity 4.5.
Then install it:
<TeamCity Data Directory>/pluginsfolder.
- Restart the server.
It is possible to to configure the following system properties for the Git plugin:
Timeout in seconds for transport that is used when the branch were never fetched
Timeout in seconds for transport that is used when the branch were previously fetched
Run git fetch in separate process or not, by default it is ran in the server's process
Log additional debug info on each found commit
For details on configuring a Git VCS Root and known issues description, please refer to TeamCity documentation.
Added submodules support. Submodules are treated as a logical part of working tree from point of view of collect changes and build patch operations.
Original tracker issue