大约2周以来,我的git LFS无法在Visual Studio中正常工作。每当我克隆包含LFS文件的存储库并在Visual Studio中打开它时,它都会说某些文件已“更改”:
如果我不打开Visual Studio而仅使用git命令行工作,那就没有问题。
我拥有的其他计算机也可以正常工作,并且允许Visual Studio仅仅在Git LFS存储库中检入文件。
我已经尝试过的方法:
git clone ...
克隆干净的实例编辑1
在进行更多调查时,我发现此问题仅发生在一个特定的文件夹中。如果我将DS-MLUnity存储库克隆到C:\XGitML\DS-MLUnity
中,则Visual Studio将在启动它们后创建这些挂钩文件。但是,当我将存储库克隆到另一个目录中时,这不会发生。 #confused
编辑2
显然这也不是问题,因为现在当我将其克隆到另一个目录时,它还会创建钩子文件。
编辑3
我设法使它一次可以在另一个目录中工作,但现在我根本无法设法使其正常工作。每次我在Visual Studio 2019(甚至2017)中打开Git-LFS目录时,都会创建钩子文件。
答案 0 :(得分:0)
听起来好像检测到Git目录存在一些问题。 Git LFS将使用git rev-parse --git-dir
查询Git来查找Git目录。
我会尝试在不先使用Visual Studio的情况下在命令行(Git Bash)上重现该问题。如果您可以在此处重现此内容,则需要查看git lfs env
的输出。这将向您显示几行,包括LocalGitDir
和LocalGitStorageDir
。除非您在工作树中,否则它们应该相同,并且它们应指向.git
目录。 LocalMediaDir
应该指向工作树下的.git/lfs/objects
目录。
如果由于某些原因这些看上去不健全,并且您确定没有设置任何奇怪的环境变量(git lfs env
也会向您显示所有Git环境变量),请继续到Git LFS issue tracker并报告问题,包括git lfs env
的输出,您的复制步骤以及报告中的相关操作系统信息。