Git support fails when path to project includes symlinks
Version support fails when there are any symlinks in path to project.
Steps to reproduce
-
mkdir simpledir; cd simpledir; git clone https://github.com/TinyTapeout/tt-demo-pcb.git -
cd .. ; ln -s simpledir symlink -
open project in simpledir/:
kicad simpledir/tt-demo-pcb/tinytapeout-demo.kicad_proand all is well (first screenshot). -
open same project, but through symlink:
kicad symlink/tt-demo-pcb/tinytapeout-demo.kicad_proand though it does see that versionning is available and the [main] is visible, none of the icons or modified files are available (second image).
This seems to occur any time there is a symlink anywhere in the path to the project directory. This does not occur, for example, if the .git/config has symlinks in the path to a local file store like
[remote "origin"]
url = file:///path/through/symlinks/kicad/gittest
fetch = +refs/heads/*:refs/remotes/origin/*
So the underlying libgit2 isn't having a problem, it's just something with how kicad is traversing the project structure.
KiCad Version
Application: KiCad x86_64 on x86_64
Version: 9.0.2-unknown-202505112105~9e17baecbc~ubuntu24.04.1, release build
Libraries:
wxWidgets 3.2.4
FreeType 2.13.2
HarfBuzz 8.3.0
FontConfig 2.15.0
Platform: Ubuntu 24.04.2 LTS, 64 bit, Little endian, wxGTK, X11, ubuntu, x11
wxWidgets: 3.2.4 (wchar_t,wx containers) GTK+ 3.24
Boost: 1.83.0
OCC: 7.6.3
Curl: 8.5.0
ngspice: 42
Compiler: GCC 13.3.0 with C++ ABI 1018
KICAD_IPC_API=ON
Locale:
Lang: en_US
Enc: UTF-8
Num: 1,234.5
Encoded кΩ丈: D0BACEA9E4B888 (sys), D0BACEA9E4B888 (utf8)

