Skip to content

README.md: Set clean_git_config = false in sample config.toml.#131

Open
mrpippy wants to merge 1 commit intocirruslabs:mainfrom
mrpippy:clean_git_config_false
Open

README.md: Set clean_git_config = false in sample config.toml.#131
mrpippy wants to merge 1 commit intocirruslabs:mainfrom
mrpippy:clean_git_config_false

Conversation

@mrpippy
Copy link

@mrpippy mrpippy commented Feb 5, 2026

By default, the GitLab runner "cleans" the git config before reusing an existing repo. This results in settings like core.ignorecase and core.precomposeunicode being removed; these are set automatically true for new repos on macOS, and disabling them can cause weird errors.

clean_git_config defaults to true when using the custom executor but is false when using the shell executor, this is why typical macOS CI setups using the shell executor don't need this option.

By default, the GitLab runner "cleans" the git config before reusing an
existing repo. This results in settings like core.ignorecase and
core.precomposeunicode being removed; these are set automatically true
for new repos on macOS, and disabling them can cause weird errors.

clean_git_config defaults to true when using the custom executor but is
false when using the shell executor, this is why typical macOS CI setups
using the shell executor don't need this option.
@edigaryev
Copy link
Contributor

Hello Brendan 👋

According to:

This should've been fixed in 18.1. Currently, the latest version available from Homebrew is 18.9.0.

  1. Which GitLab Runner version are you using?

  2. If you're already on the latest version, what are the steps to reproduce this?

@mrpippy
Copy link
Author

mrpippy commented Feb 27, 2026

Hi, I'm running v18.8.0. Our CI configuration is quite complex and I'm not sure how to easily reproduce it, but this is with GIT_STRATEGY = fetch. On the initial clone core.ignorecase and core.precomposeunicode are set in .git/config, but on the next job that reuses the tree, they've been removed.

In the builds dir, git-template/config also does not contain core.ignorecase or core.precomposeunicode. I don't know how the config cleaning is supposed to work, maybe the issue is that the template config doesn't contain those for some reason?

@edigaryev
Copy link
Contributor

@mrpippy I think a proper place to address this issue is the GitLab Runner repository. See:

Simply setting the clean_git_config to false might not be suitable for some users.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants