如何在Windows上使用Git忽略符号链接

问题描述 投票:15回答:2

我无法使它正常工作。

我已经克隆了一个具有虚拟文件(名为src)的存储库:/path/src

[在Windows上,我创建了一个符号链接:mklink -d /path/src /otherplace/src(但是我当然必须先删除虚拟src文件)。在我的.gitignore.git/info/exclude中都具有

/path/src/ 
/path/src 
path/src/
path/src

而且我已经尝试过

git ls-files -s | gawk '/120000/{print $4}'

git update-index path/src/ --assume-unchanged

但我仍然得到:

error: readlink("path/src"): Function not implemented
error: unable to index file path/src   
fatal: updating files failed

我已经尝试了全部theseothersuggestions。甚至this doesn't work。有什么想法吗?

windows git symlink gitignore
2个回答
3
投票

您可以像这样忽略单个文件进行检出:

git checkout HEAD . --no path/src

.gitignore文件仅用于将内容添加到索引。即使在将文件添加到.gitignore之前提交的文件的修改也不会被忽略。


0
投票

我知道这很晚,但是我遇到了这个问题。

就我而言,我显然已经在某些时候签入了我的符号链接。因此,无论我做什么,.gitignore都不起作用(我认为这就是Alexandre的意思)。

修复:

  1. 删除所有符号链接
  2. 看看git现在是否认为有删除的文件要提交。
  3. 如果是,则继续并执行删除操作。

现在您可以重新添加符号链接,.gitignore应该可以。

© www.soinside.com 2019 - 2024. All rights reserved.