
Git代码仓库无损整理:目录拆分和重命名
这篇文章主要使用"核弹级"命令git-filter-branch, 对代码仓库进行整理. 这里的整理包括子目录重命名, 子目录独立为新项目(保留或者不保留原来的结构)等. 整理之后, 原来的提交信息都会完好的保存下来, 方便追溯. 重要的事情说三遍: 强烈建议第一次使用的时候做好备份, 切记!!! 强烈建议第一次使用的时候做好备份, 切记!!! 强烈建议第一次使用的时候做好备份, 切记!!! 每处理完一个分支, 都需要执行如下操作, 并重新克隆项目并处理下一个分支 git remote remove origin git remote add origin xxxxxx.git git push -u origin BRANCH-NAME git push --tags 将子文件夹独立为新的仓库 git filter-branch --prune-empty --tag-name-filter cat --subdirectory-filter FOLDER-NAME BRANCH-NAME 演示: