TeamCity
 
You are viewing the documentation for an earlier version of TeamCity.

Git (JetBrains)

Last modified: 20 April 2023

This page contains description of the fields and options available when setting up VCS roots using the Git Version Control System. The VCS is visible as "Git (JetBrains)" in VCS chooser to eliminate confusion with third-party plugin.

General Settings



The following protocols are supported for the server-side VCS Checkout Mode:

Authentication Settings



Agent Settings



Please note that agent-side checkout has limited support for SSH. The only supported authentication method is "Default Private Key".

If you plan to use VCS Checkout Mode, you need to have Git 1.6.4.0 (or higher) installed on all the agents that you plan to use agent-side Git checkout on.

Supported default installation locations:

  • Windows (git.exe)

    • C:\Program Files\Git\bin

    • C:\Program Files (x86)\Git\bin

    • C:\cygwin\bin

  • Unix (git)

    • /usr/local/bin

    • /usr/bin

    • /opt/local/bin

    • /opt/bin

System Properties



For Git VCS it is possible to configure the following system properties:

Known Issues



  • Tagging is not supported over HTTP protocol

  • 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

  • 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.

  • Git commits are sorted by their commiter times, not their child-parent relationships. This can cause incorrect order of commits and clean checkouts on agents (e.g. TW-13846). The current workaround is to synchronize time on a machines which push to repository tracked by TeamCity.

Development Links



Git support is implemented as an open-source plugin. Refer to the Git for development links.