在 git 中创建符号链接时权限被拒绝

Permission denied when creating symbolic links in git

有一个类似的问题,但这里的区别是我正在研究Windows。我在 Windows 上 运行ning git(使用 git bash 工具),我已经成功克隆了我的分叉存储库。现在我需要制作符号 link,它给了我 Permission denied。例如,我可以在 .git 文件夹中创建新目录,并且我还为 .git 目录设置了 chmod /R 777,所以我似乎有权限。

我试过运行: rm -rf hooks 然后 ln -s ../git_hooks hooks.

您可能 运行 在 windows 平台(在本例中为 MINGW-MSYS)上存在 ln 的基本不兼容性。您可以将 ln 替换为 Windows 上 "does the right thing" 的版本;看看这个:

Git Bash Shell fails to create symbolic links

如果您使用 Git 作为 Windows SDK,您可以使用 pacman 包管理器安装 winln来自 运行宁:pacman -Su winln

然后你可以运行:winln -s target link,它会检查你是否有SeCreateSymbolicLinkPrivilege,否则会失败。这相当于运行宁Window的mklink.exe.

令我惊讶的是 Git 对于 Windows,它没有随 winln 一起发布,而 ln 命令执行了一个副本却没有告诉您它已经完成了一个副本。

我在 Windows 上遇到了这个问题,我做了几个步骤来解决这个问题:

  1. 通过修改 git 配置启用 core.symlinks

    git 配置 --edit

  2. 以管理员身份打开 Git Bash 并执行 git 签出命令

这对我有用,希望对某人有所帮助。

为 windows 安装 git-bash 时,有一个名为“启用符号链接”的选项。当我使用该选项安装 git-bash 时,我遇到了与 OP 相同的问题。因此,我再次安装了相同的设置 (git-bash),但未选中“启用符号链接”选项。然后我的问题就解决了。

如果您在 Windows(OpenServer、Laragon、Local)上使用本地 Web 服务器,请以管理员身份启动服务器。它对我有用