嵌套GIT Repository的错误方法是删除吗?

xxb16uws  于 2023-04-04  发布在  Git
关注(0)|答案(2)|浏览(121)

我刚刚意识到我错误地从一个子目录运行了一个'git init'命令,然后在我的项目的根目录下创建了一个主存储库。
这是一个错误,所以我运行了'rm-fr'
命令(delete)在嵌套目录'.git'上,而不是在项目的根目录中-以为这会解决我的问题(我错了)
现在的问题是,当我将项目推送到GitHub时,嵌套的文件夹变灰,好像被忽略了。
有什么方法可以撤销我所做的事情吗?或者我必须重新开始?我是新手,正在尝试完成一个示例应用教程,但我似乎破坏了的目录对于生产环境中的部署至关重要。

jmp7cifd

jmp7cifd1#

GitHub上的灰色文件夹看起来像**submodule**。
例如,参见:

在父模块中尝试使用git rm --cached sub-directory(没有尾随斜杠)。
检查在主存储库的根目录下是否有一个.gitmodules文件,其中有相同的子目录。
查看更多“Cannot remove submodule from Git repo

cd /path/to/parent/respository
git rm --cached submodule-name # no trailing slash: not submodule-name/
git commit -m "Remove submodule entry"
git push

请注意此处的--cached选项:我们不想删除子文件夹,只想删除the index中的special entry,它将其标记为子模块。

yqkkidmi

yqkkidmi2#

我在父文件夹和子文件夹中错误地使用了git init命令创建了一个子模块。只需删除.git目录,然后在您想要作为顶部目录的正确目录中使用一个git init命令重新开始。

相关问题