git - git“lfs”和“hooks”文件夹是否应该在 .git 文件夹之外?
问题描述
我已经开始将 git-lfs 用于 Unity 项目。安装 git-lfs 并提交一些资源文件后,一切似乎都运行良好。现在我注意到我的工作目录中有一些文件夹lfs
,hooks
它们不在.git
目录中。当我执行git status
git 时,会将这些文件夹中的文件列为未跟踪的新文件。这不是它应该如何工作的,对吧?有什么想法可能导致这种情况以及我应该检查什么?
这是输出:
$ git status
On branch master
Your branch is up to date with 'origin/master'.
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
deleted: Assets/Scripts/PlayerController/FOVKick.cs
deleted: Assets/Scripts/PlayerController/LerpControlledBob.cs
Changes not staged for commit:
(use "git add/rm <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
deleted: Assets/Scripts/PlayerController/FOVKick.cs.meta
deleted: Assets/Scripts/PlayerController/LerpControlledBob.cs.meta
Untracked files:
(use "git add <file>..." to include in what will be committed)
hooks/
lfs/
这是项目根目录中的 .gitattributes 文件:
## Unity ##
*.cs diff=csharp text
*.cginc text
*.shader text
*.mat merge=unityyamlmerge eol=lf
*.anim merge=unityyamlmerge eol=lf
*.unity merge=unityyamlmerge eol=lf
*.prefab merge=unityyamlmerge eol=lf
*.physicsMaterial2D merge=unityyamlmerge eol=lf
*.physicsMaterial merge=unityyamlmerge eol=lf
*.asset merge=unityyamlmerge eol=lf
*.meta merge=unityyamlmerge eol=lf
*.controller merge=unityyamlmerge eol=lf
## git-lfs ##
# Image
*.jpg filter=lfs diff=lfs merge=lfs -text
*.jpeg filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.gif filter=lfs diff=lfs merge=lfs -text
*.psd filter=lfs diff=lfs merge=lfs -text
*.ai filter=lfs diff=lfs merge=lfs -text
# Audio
*.mp3 filter=lfs diff=lfs merge=lfs -text
*.wav filter=lfs diff=lfs merge=lfs -text
*.ogg filter=lfs diff=lfs merge=lfs -text
# Video
*.mp4 filter=lfs diff=lfs merge=lfs -text
*.mov filter=lfs diff=lfs merge=lfs -text
# 3D Object
*.FBX filter=lfs diff=lfs merge=lfs -text
*.fbx filter=lfs diff=lfs merge=lfs -text
*.blend filter=lfs diff=lfs merge=lfs -text
*.obj filter=lfs diff=lfs merge=lfs -text
# Other
*.a filter=lfs diff=lfs merge=lfs -text
*.exr filter=lfs diff=lfs merge=lfs -text
*.tga filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.dll filter=lfs diff=lfs merge=lfs -text
*.unitypackage filter=lfs diff=lfs merge=lfs -text
*.aif filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.rns filter=lfs diff=lfs merge=lfs -text
*.reason filter=lfs diff=lfs merge=lfs -text
*.lxo filter=lfs diff=lfs merge=lfs -text
解决方案
找到了罪魁祸首。
这是由 IDE 使用未安装 git-lfs 的不同 git 可执行文件引起的。
推荐阅读
- bash - kubernetes 作业不会终止
- python - 为什么我在 docker 和 postgresql 之间存在连接问题?
- swift - 使用 CoreGraphics 绘制动态饼图段
- r - 当值低于零时如何使线变为红色,高于零时如何使线变为绿色?
- c# - 从“B”或“C”调用的方法“A”(MethodBase/MethodInfo)获取调用堆栈,而不使用堆栈跟踪
- c++ - GMP 卡在生成相同的随机整数
- python - ValueError:期望 x 为非空数组或数据集。(Colab 上的 Tensor Flow DNN 模型)
- java - 如何阻止 IntelliJ 在 Java 中自动导入 org.jetbrains.annotations?
- flutter - Flutter customPainter不会重新绘制
- reactjs - 如何在 daypicker 时刻反应中对齐占位符中的文本?