忽略Unity创建的Temp文件夹

Ignore the Temp folder created by Unity

我有以下文件夹结构:

mainFolder >> 包含 '.git' 和 'projectFolder'

projectFolder >> 包含“.gitignore”和 'Temp' 文件夹以及其他文件夹

以下是我的git忽略文件

的内容
*.bin
*.suo
*.user
projectFolder/obj
projectFolder/Temp
projectFolder/Library

即使 gitignore 中存在 /Temp 文件夹,当我检查 git 状态时,它会在红色未跟踪文件列表中显示 Temp 文件夹。我也尝试过使用 projectFolder/Temp/,并将 gitignore 文件移动到 mainFolder。但没有任何效果。如何解决这个问题?

如果您的 .gitignore 文件已经在子文件夹中,您应该列出与该文件夹相关的路径和模式。

在你的情况下,因为它已经在 projectFolder 中,所以它应该包含:

obj/
Temp/
Library/

忽略您提到的文件夹。

你应该将这一行添加到 gitignore:

/[Tt]emp/

我一直喜欢这个Git忽略文件:

UnityGitIgnore

虽然 @LEGEC's answer 会为您解决,但推荐的做法是将 .gitignore 文件放在项目的根目录下。

在那种情况下,您只需要发出一个命令,它就会自行处理:

git mv projectFolder/.gitignore .. && git commit -m "Moving gitignore to parent directory"

或者,如果您的实际项目是 projectFolder,您需要在该项目目录中而不是项目的父文件夹中初始化 git 存储库。

编辑:如果您担心丢失所有提交历史记录,您可以 1) 执行 git mv projectFolder/* .. 并提交这些更改。 2) 然后,将 mainFolder 重命名为 project Folder, 3) 将其嵌套在另一个新文件夹下,并将此新文件夹命名为 mainFolder。如果您想格外小心,只需复制 mainFolder 并在复制的文件夹中尝试这些。现在纠正这个问题比在你的开发周期以后更容易:)