After upgrading to fish 4.3, config.fish is recreated (if you remove it) every time fish runs. I'm not sure if this change in behaviour was intended.
The change was made in 3e7c5ae. Prior to 4.3, creating the default config.fish and empty configuration directories was conditional on an old value of __fish_initialized.
Originally, I removed config.fish after moving my config to ~/.config/fish/conf.d/. But I have no problems gitignoring the file if it's intended for config.fish to always stick around.
fish: 4.3.1 (via Homebrew)
OS: macOS Sequoia 15.7.3
Terminal: Ghostty 1.3.0
After upgrading to fish 4.3,
config.fishis recreated (if you remove it) every time fish runs. I'm not sure if this change in behaviour was intended.The change was made in 3e7c5ae. Prior to 4.3, creating the default
config.fishand empty configuration directories was conditional on an old value of__fish_initialized.Originally, I removed
config.fishafter moving my config to~/.config/fish/conf.d/. But I have no problems gitignoring the file if it's intended forconfig.fishto always stick around.fish: 4.3.1 (via Homebrew)
OS: macOS Sequoia 15.7.3
Terminal: Ghostty 1.3.0