所以我知道git子模块和子树。但是我以前也可以将嵌套的完整Git存储库视为简单的文件系统子目录?
例如,给定:
topdir/
file1
file2
subdir1/
file1
file2
subdir2/
file1
file2
subdir3/
.git/
file1
file2
以前,只需执行:
$ git init && git commit -a .
topdir
中的会导致subdir3
的文件被提交为原始或文字子目录(即不是子模块),使用' .git& #39;在超级或顶级存储库中忽略的子目录中的目录。输入subdir3
会使subdir3/.git
成为当前存储库。
对于1.8.2.1.501,似乎没有任何方法可以恢复此行为。现在运行上面的命令会导致subdir3
被视为子模块,但是, 不正确地添加到索引中。我必须明确地执行git submodule add
将其下的文件添加到主仓库。
这种变化何时发生?
是否有任何方法可以恢复旧的行为,即将子目录视为常规目录,而不是git子模块或子树?