Git提交已追踪文件夹异常:Server文件夹推送至GitHub后为空
解决方法
问题根源是server文件夹内部存在独立的Git仓库,外层仓库会将其识别为Git子模块占位符,而非普通文件夹,因此推送后显示为空。以下是两种处理方案:
方案一:将server合并到新仓库(推荐,若无需保留server原仓库历史)
- 进入server目录,删除内部的Git仓库文件:
cd QUIZERO/server rm -rf .git # Windows系统请使用:rd /s /q .git - 返回父文件夹QUIZERO,初始化外层仓库(若未初始化):
cd .. git init - 添加所有文件并提交:
git add . git commit -m "Add server and client directories" - 关联GitHub远程仓库并推送:
git remote add origin <你的GitHub仓库地址> git push -u origin main
方案二:将server作为子模块保留(若需保留server原仓库历史)
如果需要保留server原仓库的提交记录,可将其作为子模块加入新仓库:
- 确保server原仓库已推送到GitHub,然后在QUIZERO目录下执行:
此时GitHub仓库中server会显示为一个链接形式的子模块,点击可跳转至原仓库。git init git submodule add <server原仓库的GitHub地址> server git add .gitmodules server git commit -m "Add client directory and server as submodule" git remote add origin <新GitHub仓库地址> git push -u origin main
内容的提问来源于stack exchange,提问作者Ahmad Al Maaz
相关产品推荐
相关产品推荐

