Git添加所有子目录

我无法将文件夹及其所有子目录添加到我的git存储库。 我意识到这是一个非常受欢迎的问题,做了一些Googlesearch,我已经尝试了每个build议没有运气,具体来说,从Git-Add的手册页的build议。 我甚至试过git add -A没有成功。 为了简单起见,说我把我的git仓库初始化为Dir1 。 然后我有以下目录结构的文件。

 Dir1/file1-1.txt Dir1/file1-2.txt Dir1/Dir2/file2-1.txt Dir1/Dir2/Dir3/file3-1.txt 

我真正的文件有5-6层深的子目录,那么是否有git命令将每个子目录中的所有文件添加到我的存储库? 现在,当我从手册页git add Dir1/\*的build议时,我可以在我的回购中看到Dir2 ,但它显示为绿色文件夹,我无法打开它,这导致我相信所有的Dir2文件/文件夹没有被添加。 任何帮助将不胜感激。 我是一个新的git用户(不到一个星期的使用它),所以请尝试并保持在初学者的水平。

 git add . 

而在存储库的根目录中。 它会添加一切。 如果你做的git add *它只会添加文件*点。 单点是指目录。

如果您的目录或文件没有添加到git index / repo上面的命令之后,记得检查它是否标记为被git忽略的.gitignore文件。

如果一个子目录本身是一个git仓库,即.has .git目录,则可以面对问题 – 使用ls -a检查。

要移除到子目录和rm .git -rf

也挣扎,但正确的打字

git add -f ./JS/*

其中JS是我的文件夹名称,其中包含子文件夹和文件

我不能肯定地说,如果是这样的话,但对我来说似乎是一个问题是在一些子目录中有.gitignore文件。 再次,我不能保证这一点,但一切工作后,这些被删除。

最有可能的.gitignore文件正在发挥。 请注意.gitignore文件不仅可以出现在repo的根级别,也可以出现在任何子级别。 你可以尝试从根级别find它们:

找 。 -name“.gitignore”

然后检查结果,看看哪些可能会阻止你的子目录被添加。

也可能涉及子模块。 检查“.gitmodules”文件的有问题的目录。

我之前看到过这个问题,当我试图添加的(子)文件夹的名字以“_Something_”开头的时候,

我删除了下划线,它的工作。 检查您的文件夹是否有可能导致问题的字符。