我的仓库中有一个子目录停止跟踪更改。我可以将abc.php文件添加到某个级别以上的任何目录,git status
返回预期的结果,但是一旦我将abc.php添加到相关子目录(或更改现有文件),git status
空了。我相信子目录使用拥有它自己的git repo,但我可能错了。
我看到git update-index --really-refresh
may be an option,但我很担心,因为我将“兄弟”目录中的其他git项目添加到有问题的目录中。 (我在父母回购中没有做任何事情来承认这些,所以希望也没关系。)
也就是说,我有
dir及更高版本中的每个父目录都没有问题,并按预期工作。
我的主要问题:在给定上述结构的情况下,我应该关注运行吗?我还想问一下我应该在主要仓库中使用repos做什么(即以某种方式将它们声明为子模块)?
感谢。
答案 0 :(得分:2)
好的,我需要运行以下两个命令才能使其正常工作:
git rm --cached path_to_subdir (no trailing slash)
git add path_to_subdir/*
基于我在原始帖子(git update-index --really-refresh
)中尝试运行命令时看到的消息,在子目录中曾经有一个非removed properly的git repo,并且从未被宣布为子模块。
答案 1 :(得分:0)
2种可能性:
.gitignore
文件中)