我有一个名为 的仓库Base
,还有另一个名为 的仓库Project
。它们被克隆到C:\Company\Base
和 中C:\Company\Project
。
我用来mklink C:\Copmany\Project\BuildScript.bat C:\Company\Base\BuildScript.bat
创建符号链接。
然后我推动这个改变:
cd C:\Company\Project
git add .
git commit -m "adding symbolic link"
git push
我可以在 GitHub 上看到这BuildScript.bat
是一个符号链接。
我也可以使用来验证它dir /AL /S C:\Company\Project
。
但是,当我在另一台电脑上或在自己的电脑上的另一个目录中克隆该存储库时,该符号链接不再是一个链接。
我应该怎么办?
答案1
我在 Windows 主机系统上遇到了与子模块存储库类似的问题(然后将项目部署到 docker 容器上,其中一个容器无法启动)。要检查您是否未启用正确的符号链接支持:
git config --get core.symlinks
应该返回true
。如果不是这样,那么你必须使用以下命令再次删除并克隆你的 repo:
git clone -c core.symlinks=true <repository_url>
注意:也许可以仅使用来启用它git config --set __
,但由于某种原因它对我来说不起作用
--recurse-submodules
注 2:如果它是带有 sybmodules 的存储库,您可能还想使用它。
并且也可以在 git 安装期间启用符号链接支持(它将产生全局影响)。 使用 symlin 选项的 Git 安装步骤