GitVersion icon indicating copy to clipboard operation
GitVersion copied to clipboard

[ISSUE]: gitversion 6.10.0 (and 6.5.0 as well) hangs for a while when calculating version

Open simonachmueller opened this issue 9 months ago • 5 comments

Prerequisites

  • [x] I have written a descriptive issue title
  • [x] I have searched issues to ensure it has not already been reported

GitVersion package

GitVersion.Tool, gittools/actions, AzureDevops task

GitVersion version

6.10.0

Operating system

Linux, Windows

What are you seeing?

We are using git flow and mark specific commits on the release branch with a tag (looks like vX.X.X, v1.2.3 for example) and then run a Azure Devops build pipeline selecting that tag. Here is the GitVersion.yml

assembly-informational-format: "{FullSemVer}"
branches:
  develop:
    label: develop
  release:
    label: release
    is-release-branch: true
  hotfix:
    label: hotfix
ignore:
  sha: []
merge-message-formats: {}

Relevant release pipeline:

  - checkout: self
    clean: true
    fetchDepth: 0
  - task: gitversion/setup@3
    displayName: gitversion/setup
    inputs:
      versionSpec: 6.0.x
  - task: gitversion/execute@3
    displayName: gitversion/execute

We just updated from gitversion 5.12.0 to 6.0.5 and the gitversion/execute task takes now 1.5 hours for a first run and 3.5 hours a week later. v5.12.0 finishes within a minute. I can reproduce that behavior locally, by checking out our repository on a specific tag.

Gitversion starts as /opt/hostedtoolcache/GitVersion.Tool/6.0.5/dotnet-gitversion --roll-forward Major /home/vsts/work/1/s /output json /l console on the azure hosted build agent. I can't provide the full output, but some findings:

Azure build agent reports memory and CPU warnings Agent environment resources - Disk: / Available 18306.55 MB out of 74244.74 MB, Memory: Used 6846.00 MB out of 6921.00 MB, CPU: Usage 94.92%

Gitversion runs fast in the beginning on tags with the output like Begin: Finding merge base between 'tags/v2.17.0' and 'origin/release/2.9.0'. etc Then it stops for like 50 minutes and start to work on branches Begin: Finding merge base between 'hotfix/2.15.1' and 'master'.

Our repo has around a 100 active tags and somewhat about 15 active branches.

What is expected?

Gitversion finishes within few minutes

Steps to Reproduce

Run on a repo when a tag is checked out?

RepositoryFixture Test

No response

Output log or link to your CI build (if appropriate).


simonachmueller avatar Feb 06 '25 13:02 simonachmueller

Is it possible to create a repository somehow to get it reproduceable? Or a integration test. What makes your repository so special beside the fact that you have a lot of tags.

HHobeck avatar Feb 07 '25 07:02 HHobeck

Can I somehow collect anonymous logs from gitversion to be able to provide it here? I don't think I would be able to re-create similar public repository to provide if for you.

simonachmueller avatar Feb 07 '25 16:02 simonachmueller

@HHobeck do you have ideas how I can provide additional information without exposing my repository?

simonachmueller avatar Feb 20 '25 13:02 simonachmueller

@HHobeck do you have ideas how I can provide additional information without exposing my repository?

Maybe writing a tool which uses your repository and randomize/anonymize the commit history including branches and tags?

HHobeck avatar Feb 24 '25 12:02 HHobeck

Hi @HHobeck can I enable verbose logging or create any kinds of logs that might help you with investigations?

simonachmueller avatar Apr 02 '25 20:04 simonachmueller

This issue has been automatically marked as stale because it has not had recent activity. After 30 days from now, it will be closed if no further activity occurs.

github-actions[bot] avatar Jul 02 '25 11:07 github-actions[bot]

This issue was closed because it has been stalled for 30 days with no activity. Thank you for your contributions

github-actions[bot] avatar Aug 01 '25 11:08 github-actions[bot]

:tada: This issue has been resolved in version 6.5.0 :tada: The release is available on:

Your GitReleaseManager bot :package::rocket:

gittools-bot avatar Nov 05 '25 23:11 gittools-bot