如何在GitHub中将SpartanDrive-hansol内文件上移并合并至master分支
解决Git分支合并时多余文件夹层级的问题
没问题,我来帮你搞定这个事儿!要把SpartanDrive-hansol里的文件移到根目录、删掉这个多余文件夹,同时保证Git能正确追踪这些更改,按下面的步骤来就行:
步骤1:确保工作区干净
先检查当前分支有没有未提交的更改,避免操作混乱:
git status
如果有未提交的内容,先执行git add .和git commit -m "暂存当前更改"把它们提交掉。
步骤2:移动文件夹内的所有文件到根目录
在终端里执行这条命令,把SpartanDrive-hansol里的所有文件(包括子文件夹)直接移到项目根目录:
git mv SpartanDrive-hansol/* .
注意:如果文件夹里有隐藏文件(比如
.env、.gitignore这类),上面的命令可能不会移动它们。这时候先在bash里开启dotglob模式,再执行移动命令:shopt -s dotglob git mv SpartanDrive-hansol/* .
步骤3:删除空的原文件夹
文件移走后,SpartanDrive-hansol就空了,直接删除它:
rm -rf SpartanDrive-hansol
步骤4:提交更改
现在让Git记录这次移动和删除操作:
git status
你会看到所有文件都被标记为“renamed”(重命名/移动),原文件夹被删除。接下来提交:
git commit -m "Move all files from SpartanDrive-hansol to root, remove redundant folder"
步骤5:合并到master分支
现在你的分支结构已经和master一致了,合并就不会有问题了:
git checkout master git merge <你的分支名称>
如果合并时遇到同名文件冲突,只需要手动解决冲突后提交即可——不过按照你的描述,master里没有这个文件夹,这种情况大概率不会出现。
内容的提问来源于stack exchange,提问作者Hansol Kim
相关产品推荐
相关产品推荐

