我一直在阅读一篇文章,作者在其中指示:在现有文档中创建一个新的存储库,并想知道这是否是他忽略的错误。我稍后会和他核实。
这些是我想检查的条件:
将现有目录放入存储库时的情况, 还检入了已经签入主项目的文件 新的(子)存储库。这可能吗?
签入包含git存储库的目录树时 第一次
在存储库下创建新的空存储库时 通过git init,或通过将.git存储库复制到新的或空的 ?目录
答案 0 :(得分:2)
正如“Git repository in a git repository”中所提到的,嵌套式仓库主要被父仓库忽略(只记录了一个gitlink)
因此,父仓库上的任何操作都不会在嵌套仓库上发生。
如果您将嵌套的repo声明为子模块,那么您可以检出父repo 和嵌套的repo,但该子模块将始终引用固定的提交。
如果您在子模块中进行任何修改,则需要提交它们,将它们推送到并返回到父级仓库,提交并推送(以记录子模块的新固定提交)。
请参阅“True nature of submodules”。
答案 1 :(得分:1)
如果要执行此操作,如果要使用嵌套存储库,则应使用submodules。顶级存储库将跟踪所有子存储库的最新提交,在其中,事物可以按照您的意愿。如果没有这个,git将以无证件和不受支持的方式运行,因此您可能不应该尝试它。