windows - git checkout -- <filename> 不会在 Windows 10 上恢复本地删除的符号链接(symbolic link)

标签 windows git symlink git-checkout

所以,是的,我正在使用 Windows 10,而办公室里我周围的每个人都在使用 Linux/Mac。但我不会放弃。

我删除了一个符号链接(symbolic link),它是 repo 的一部分,它是由“git clone”在本地创建的——(如果你觉得无聊,请阅读下面的原因)

现在,当我运行“git status”时,它说:“已删除”我的符号链接(symbolic link)。我想要他们回来,所以我尝试了以下方法:

git checkout 。
git checkout --
git reset --hard HEAD

没有任何效果,它们都没有错误地完成,但是“git status”仍然显示符号链接(symbolic link)已被删除,实际上“ls”显示它们已经消失了。任何使用“ln -s”(在 git-bash 中)自己创建它们的尝试都会导致 git status 中出现“typechange”。

如何获得“git checkout”。或任何其他 git 命令来将符号链接(symbolic link)恢复为它们在存储库中的状态?

最佳答案

所以,是的,时间戳应该显示我在知道答案时发布了问题,但是,由于我花了将近两个小时试图解决这个问题,而且答案不在 stackoverflow 上(还)我决定我 shell post无论如何我的问题并回答它。

Eitam@DESKTOP-JJOOD64 MINGW64 /d/git/my-repo (master)
$ git checkout .

Eitam@DESKTOP-JJOOD64 MINGW64 /d/git/my-repo (master)

命令似乎已完成,没有错误或问题,但“git status”仍会显示我的符号链接(symbolic link)不存在。

解决方案:

以管理员身份运行 git-bash!!!并使用“git checkout”。或“git reset --hard HEAD”或任何本应首先运行的 git 命令。

令人恼火的是 git-bash 没有提示它缺少管理员权限。当我尝试通过使用“mklink”自己创建符号链接(symbolic link)来解决问题时,我发现它是必需的,它告诉我我需要管理员权限...

关于windows - git checkout -- <filename> 不会在 Windows 10 上恢复本地删除的符号链接(symbolic link),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40611175/

相关文章:

.net - 如何在 Windows 注册表中存储 double 型(64 位浮点型)或浮点型?

windows - 在 Windows 上通过 Jenkins 使用 chromedriver 和 chrome 捕获屏幕截图时,从渲染器 : 10. 000 接收消息超时

git - 如何在 GIT 中查看暂存区中的文件内容?

php - 如何自动 pull 版本号?

当 merge 实际完成时, merge 提交的 Git 还原会导致问题。

macos - 如何在保留 inode 的同时更改符号链接(symbolic link)目标

r - 使用 ggplot2/Rstudio 进行缓慢的图形渲染 - GPU 问题?

windows - 来自 Windows 客户端的 grunt-rsync 失败

linux - Linux 中的软链接(soft link)重定向

git - Go:无法在符号链接(symbolic link)中打包