Git
1. 创建一个孤儿分支 (Orphan Branch)
这个命令会创建一个临时分支,它没有任何历史记录,但保留了你当前目录下的所有文件。
Bash
# 假设你想清理的分支是 main,我们先创建一个叫 temp 的新起点 |
2. 添加所有文件
将当前目录下的所有代码标记为“新提交”。
Bash
git add -A |
3. 提交更改
这将成为你新历史中的“第一次提交”(Root Commit)。
Bash
git commit -am "Initial clean commit" |
4. 删除旧的分支
现在你可以删掉那个带有沉重历史(比如那 700 万个对象)的旧分支了。
Bash
# 假设旧分支叫 main |
5. 重命名当前分支
将当前的临时分支重命名为原来的分支名。
Bash
git branch -m main |
6. 强制推送到远程(慎重!)
如果你已经关联了远程仓库(GitHub/GitLab),你需要强制推送来覆盖远程的历史。 注意:这会删除远程上的所有历史记录,不可逆!
Bash
git push -f origin main |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Tian's Blog!
