删除 git 中所有历史提交
— 焉知非鱼把旧项目改一改, 提交到 git 仓库中, 这是很多程序员的学习手段。但是, 旧项目的 history commit 中往往有很多敏感信息, 例如数据库登录信息。我就比较奇特了, 我误 commit 了一个大文件(jar 包, 囧)。 历史提交信息正好我也不想保留了, 我想把改好的这个版本当作一次完整的原子提交。即当作一个新仓库了。做法如下:
- 1)切换到一个新分支
git checkout --orphan latest_branch
-
- 缓存所有文件(
.gitignore
中的除外)
- 缓存所有文件(
git add -A
-
- 提交跟踪后的文件
git commit -am "init commit"
-
- 删除 master 分支
git branch -D master
-
- 重命名当前分支为 master
git branch -m master
-
- 提交到远程 master 分支
git push -f origin master