我想为项目添加一个新目录,但我无法做到这一点......
如果我git status
新目录未显示
如果git add -A
没有任何反应,当我执行git status
时,直接不显示。
没有gitignore
(我至少可以找到......)
有一个exclude
文件包含:
Foo.Mobile\platforms\android\assets
Foo.Mobile/platforms/android/.idea/workspace.xml
但我认为这不是问题,我创建的目录是
C:\Users\Bar\git\FooAndroid\Foo.Mobile\platforms
还有一个包含
的sparse-checkout
文件
Foo.Mobile/platforms/android/*
我再次认为这不是问题......
该项目基于IntelliJ。
由于
答案 0 :(得分:3)
Git不允许使用空目录或文件 尝试在目录中创建一个虚拟文件
原因是dat Git仅适用于文件中的更改,如果没有文本则无法比较任何内容。
diff文件还包含文件的位置(目录),因此会自动添加目录。
Here是一个解决方案,如果你真的想在Git中保留一个空目录。
答案 1 :(得分:1)
首先,您必须确保您正在添加的目录中有一个文件,因为git仅对文件进行操作。既然你已经做到了这一点,接下来要做的就是麻烦拍摄。
使用git add .
只会向下添加当前目录;如果使用,它必须来自存储库的根目录。有时,git add --all
会更容易,更合适。
您需要查找.gitignore
文件。请注意,有一个" dot"在文件的开头;在大多数操作系统(当然还有Windows)上,这些文件被归类为" system"文件并默认隐藏;但是,您可以依赖于操作系统的方式使它们可见。 .gitignore应该位于您克隆的存储库的根级别,但有时在不同的目录中可能存在多个.gitignore。使用命令行或GUI工具可以帮助查找可能存在的任何.gitignore
文件。
如果您正在查看.gitignore
文件,请确保您了解任何可能无意中与您尝试添加的文件匹配的正则表达式。作为一个简单的测试,您可以尝试重命名.gitignore
并再次尝试添加,但是准备好取消暂存将作为结果添加的文件。您也可以尝试git check-ignore -v <dirname>
,或阅读check-ignore的帮助以获取更多高级选项。 git help gitignore
提供了一些有用的帮助。
如果所有其他方法都失败了,请尝试添加任意测试文件,以确保存储库中的其他内容没有错误。