Troubleshooting Git version management issues


The following topics discuss how to troubleshoot issues in the Git integration for version management of TrueSight Server Automation objects:

Git repository setup is unresponsive

During configuration of the remote Git repository, the Git Repository Setup dialog box stops responding (that is, it hangs), due to an incompatibility with the Git Credential Manager feature in Git Bash 2.7.4 or later on Windows.

Workaround:

Uninstall Git Bash and then reinstall it, ensuring that during this installation you do not enable the Git Credential Manager feature. By default, the Git Credential Manager option is selected in the Git Bash setup wizard, and you must, therefore, clear the selected check box.

Errors during configuration of the remote Git repository

After you configure the connection to the remote Git repository through the Git Repository Setup dialog box, on the Remote Repo Details tab, your settings are validated. If a connection cannot be established with the remote Git repository, an error is issued. The error begins with the following text: "Error occurred while validating... Repository URL, Automation Principal Details, SSL Verify." The error then continues with more specific details, as described in the following table:

 

Error

Cause and troubleshooting instructions

fatal: Authentication failed for 'repository URL'

You provided an incorrect user name or password for the automation principal.

Specify a valid user name and password for the automation principal.

fatal: unable to access 'repository URL':
SSL certificate problem:
self signed certificate in certificate chain

The Git repository is hosted with a self-signed SSL certificate.

Clear the SSL Verify check box, so that the SSL handshake does not fail.

fata: unable to access 'repository URL':
Failed to connect to host and port:
Connection refused

Connection to the remote repository refused due to error in the repository URL.

Make sure that you have the correct repository URL (check, for example, that it contains the correct protocol, host, and port).
Specify the correct URL in the Repository URL field.

Error connecting to the local Git repository

After you configure the local Git repository through the Git Repository Setup dialog box, on the Local Repo Details tab, the connection to the local repository fails, and the following error message is issued:

Please provide valid config details for Repo Server and Git Installation path. Failed to connect to <host>:<port>

This occurs if you provided incorrect repository specifications. Provide correct values in the Repository Server field and (for Windows) in the Git Installation Location field.

Timeout error message for acquiring a lock to perform any operation

When you attempt to commit changes to the Git repository, and while executing the commit command, if the system found a locked folder in the Agent (Git repository), the following error message is issued:

Timeout occurred. Could not acquire the lock to perform Git operation. 

GitError.jpg

To resolve this issue, you must clean data from the \GIT_REPO\temp\bl-lock directory in the Git repository machine and commit again.

The Git commit command must be executed in sequence because it is a single Git local repository. TrueSight Server Automation acquires a lock while the Git commit command is in execution.

Git push fails due to conflict with another push

When you attempt to push committed changes to the remote Git repository, the following error message is issued:

Error while pushing commits... Updates were rejected because the remote contains work that you do not have locally...

This happens if you push to the same remote Git repository from another local repository other than the one that you set up for TrueSight Server Automation. Doing so is not recommended, so you ensure that the remote Git repository used by TrueSight Server Automation is dedicated to TrueSight Server Automation data.

To resolve this issue, you need to perform a Git pull before attempting to push data again from TrueSight Server Automation. Perform the following steps:

  1. Log on to the local repository server, that is, to the computer with an RSCD agent where you set up the local repository.
  2. Open a shell prompt (bash or GitBash).
  3. Change directory to the folder location where you set up the local repository (as specified during Git configuration in the Repository Path field).
  4. Run a git pull command.
  5. If conflicts are detected, git will tell you what files are in conflict. Resolve them, and finish the pull action.
  6. Perform a push action for TrueSight Server Automation data, either from the BLCLI (using the Git - pushToRemote command) or from the TrueSight Server Automation console (using the Push button in the toolbar).
  7. In the future, ensure that no data is pushed to the remote Git repository from outside TrueSight Server Automation.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*