I have a PHP project in remote git repository, including symlinks. I have Ubuntu virtual machine installed on Windows host.
The project is cloned, from Ubuntu git client, in a shared folder of VirtualBox. In this way the project is accessible from Windows too with PHPStorm.
By Ubuntu side:
(I have not edited gitconfig)
> git config -l
core.symlinks = false
Symbolic links properly works.
By Windows side:
(I have not edited gitconfig)
> git config -l
core.symlinks = false
It's not required symbolic links to be converted in Windows link, they are not needed to work under Windows.
As per https://git-scm.com/docs/git-config :
core.symlinks
If false, symbolic links are checked out as small plain files that contain the link text. git-update-index[1] and git-add[1] will not change the recorded type to regular file. Useful on filesystems like FAT that do not support symbolic links.
The default is true, except git-clone[1] or git-init[1] will probe and set core.symlinks false if appropriate when the repository is created.
So I expect that, by Windows side, git client manage symbolic links as text files.
But: if I remove symlink by Ubuntu side, and create the same exactly (still by Ubuntu side), then by Windows side PHPStorm list this symlink as change to be committed. Moreover, it is unknown file type.
What I'm missing? Thank you
I have already seen the following Q/A, that are useful but not resolved in my case: