使用Git创建空分支后本地assets文件夹文件丢失求助
解决Git孤儿分支创建后本地assets文件夹丢失及推送不完整问题
一、立即找回本地assets文件夹
执行以下命令切换回原来的分支(比如main),工作区会恢复该分支下的所有文件,包括你的assets文件夹:
git switch main
切换后检查当前目录,assets文件夹应该会重新出现。
二、正确创建独立分支并推送你的工作
git switch --orphan用于创建无任何历史的空分支,适合完全独立的项目,而非基于现有仓库的协作分支。正确的协作分支创建流程如下:
- 确保在
main分支拉取最新的远程代码:git pull origin main - 从
main分支创建你的独立工作分支:git switch -c feature/nicholas-sebastian - 将你的assets文件夹及其他工作文件添加到暂存区:
若有不需要跟踪的文件,提前在git add ..gitignore中配置,避免误提交。 - 提交你的工作:
git commit -m "Add assets and project files" - 推送到远程仓库的对应分支:
git push origin feature/nicholas-sebastian
三、迁移孤儿分支的已有提交到正常分支
如果已经在feature/nicholas-sebastian孤儿分支提交了部分文件,可按以下步骤迁移工作:
- 切换回
main分支并创建新的正常分支:git switch main git switch -c feature/nicholas-sebastian-new - 合并孤儿分支的提交到新分支:
git merge feature/nicholas-sebastian --allow-unrelated-histories - 添加assets文件夹并提交:
git add assets/ git commit -m "Add missing assets folder" - 推送新分支到远程:
git push origin feature/nicholas-sebastian-new - 确认无误后,删除原孤儿分支:
git branch -D feature/nicholas-sebastian git push origin --delete feature/nicholas-sebastian
关键说明
切换到孤儿分支时,Git会自动移除工作区中所有属于原有分支的已跟踪文件——这些文件并未被删除,只是在当前孤儿分支的工作区不可见,切换回原分支即可恢复。
内容的提问来源于stack exchange,提问作者Nicholas Sebastian
相关产品推荐
相关产品推荐

