git - Nested GIT Repository 错误的删除方法?

标签 git github

我刚刚意识到我运行了一个 '混帐初始化' 错误地从子目录中执行命令,然后在我的项目的根目录中创建了一个主存储库。

这是一个错误,所以我运行了 'rm-fr'

在不在项目根目录中的嵌套目录“.git”上执行命令(删除)——认为这会解决我的问题(我错了)

现在的问题是,当我将项目推送到 GitHub 时,嵌套文件夹显示为灰色,就好像它被忽略了一样。

有什么方法可以撤销我所做的事情吗?还是我只需要重新开始?我是新手,正在尝试完成一个示例应用程序教程,但我似乎毁掉的目录对于在生产环境中进行部署至关重要。

最佳答案

GitHub 上的一个灰色文件夹看起来像一个 submodule .
参见示例:

尝试 git rm --cached sub-directory(没有尾部斜线)。
检查你的主仓库的根目录下是否有一个 .gitmodules 文件,里面有相同的子目录。

查看更多信息“Cannot remove submodule from Git repo

git rm --cached submodule-name # no trailing slash: not submodule-name/
git commit -m "Remove submodule entry"
git push

注意这里的 --cached 选项:我们不想删除子文件夹,只删除 special entrythe index将其标记为子模块。

关于git - Nested GIT Repository 错误的删除方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25092958/

相关文章:

ruby-on-rails - 使用 Remote_cache 进行 Capistrano 部署 - 权限被拒绝

git - 使用 GitFlow 进行 VSTS 发布定义

git - 从另一个分支上的选定提交创建一个 git 分支

windows - 如何在git中别名删除 merge 的分支

javascript - 部署到 Heroku 时如何忽略 GitHub 存储库中的文件?

windows - GIThub 和非英文窗口?

javascript - 当 jekyll gist 标签与私有(private) gist 一起使用时,自动更改脚本 src

git - 使用 Git 或 Mercurial,您如何知道何时进行克隆或 pull ,没有人 checkin 文件(推送)?

GitLab SSH 推送失败内存 malloc 失败错误

github - VScode 与所有 github 存储库同步(即自动拉取)