我有以下文件夹结构:
mainFolder
>>包含'.git'和'projectFolder'
projectFolder
>>包含'.gitignore'和'Temp'文件夹以及其他文件夹
以下是我的gitignore文件的内容
*.bin
*.suo
*.user
projectFolder/obj
projectFolder/Temp
projectFolder/Library
即使gitignore中存在/ Temp文件夹,当我检查git状态时,它会在红色未跟踪文件列表中显示Temp文件夹。我也尝试过使用projectFolder / Temp /,并将gitignore文件移动到mainFolder。但没有任何效果。如何解决这个问题?
答案 0 :(得分:2)
如果您的.gitignore
文件已在子文件夹中,则应列出相对于该文件夹的路径和模式。
在您的情况下,因为它已经在projectFolder
内,所以它应该包含:
obj/
Temp/
Library/
忽略您提到的文件夹。
答案 1 :(得分:2)
答案 2 :(得分:1)
虽然@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
,并将其嵌套在另一个新文件夹下,并将此新文件夹命名为mainFolder
。如果您想要格外小心,只需复制mainFolder
并在复制的文件夹中尝试这些。现在比你的开发周期更容易纠正这个问题:)