如何从其他分支检出除指定文件夹外的所有文件并保留该分支的文件夹提交
解决方案
你可以通过Git的路径排除功能,一次性从branch A检出除mydir外的所有内容,同时保留branch B中mydir的修改,具体步骤如下:
确保当前处于branch B且工作区干净
先切换到目标分支并检查工作状态:git checkout branchB git status如果有非
mydir内的未提交修改,先用git stash暂存,避免被检出操作覆盖。从branch A检出排除
mydir的所有内容
使用带路径排除的git checkout命令,将branch A中除mydir外的所有文件同步到当前工作区和暂存区:git checkout branchA -- . :!mydir命令说明:
branchA:指定要从中获取内容的分支-- .:匹配该分支下所有文件和目录:!mydir:排除mydir目录及其下所有内容
验证并测试
执行命令后,用git status确认状态:mydir内的文件会保留branch B的修改,其余文件则替换为branch A的版本,直接开展测试即可。后续编辑
mydir
测试完成后,可直接编辑mydir内的文件,编辑完毕后正常提交到branch B即可,不会受之前检出操作的影响。
内容的提问来源于stack exchange,提问作者tamashika
相关产品推荐
相关产品推荐

