首页 > Git 感觉无用/多余的 commit 状态可以删掉吗 ?

Git 感觉无用/多余的 commit 状态可以删掉吗 ?

Git 还不怎么熟 , 我想问下 .
历史提交的commit , 如果以后这个项目目录太大 , 可以把一些历史状态删掉吗 ?

这样可以节省很多空间


表示git commit只是保存文件变化,所以不会占用多少空间


@AlexChen 已经说了 通过 reset 命令来做:

 git reset --hard <SOME-COMMIT>

这个命令的效果是撤销掉 这个 commit 之后的所有 commit。还可以通过 revert 命令来做:

git revert <SOME-COMMIT>

效果是撤销掉某一个提交。
这么做风险的确很大,一定要慎重。


git rebase -i

  1. 已经上传到服务器的提交,不论是 reset 还是 rebase 都会遭队友唾弃的;
  2. 多余的提交只会记录改动,如果都是正向的修改,并不会增加多少体积,反倒是所推荐的最佳实践策略;
  3. 有权限对服务器 reset 时,仅仅是让自己的本地跟服务器强行跳转到对应提交;队友还在原始位置,他们再次更新和提交的结果会很有戏剧性;
  4. rebase 在这种情况下针对自己本地和服务器还不错;队友那边就要骂娘了,又给老子整出来个新分支,一点也不美观的同时,本地提交冗余才真正的变多了...

印象中rebase命令可以合并掉多余的commit

http://www.ruanyifeng.com/blog/2015/08/git-use-process.html
参考此文


有的,随便一找就能找到

git reset --hard <commit_id>

git push origin HEAD --force


不过真心不建议这么做。

【热门文章】
【热门文章】