赞
踩
在软件开发的过程中,往往会上传很多的提交以便于我们后续的版本回滚,但是有些版本是因为我们误操作或者提交之后才发现这是个不合格版本,那么这时我们就需要通过删除冗余版本来更好的管理我们的仓库。
实验环境:
准备3个已提交的不同版本commit文本文档
接下来查看历史提交版本,可以看出我们已经提交了3冗余版本,根据之前的提交备注找出我们需要删除的版本。
git log
这里提醒一下,由于刚刚输入git log命令已经进入了vim编辑器状态,那么退出即可输入下一个命令。
假设:删除commit1和commit2版本,保留commit3
那么有以下两种方式,注意:想要删除的版本是前一个版本的id,比如想要删除commit2那么就需要写commit1的id,想要删除commit1需要写first commit的id。必然保留一个版本下来。
1. git rebase -i <想要删除的commit id>
2. git rebase -i HEAD~3 #数字代表需要删除的个数,顺序从后往前排列,那么根据假设我们应该输入HEAD~1才能到达commit,输入HEAD~2只会显示commit3和commit2。
由于第二种方法方便,我采用这一种方法
输入命令后便会进入下面视图
保存退出之后就直接删除了,现在只剩下了commit3.txt的提交版本,并输入以下命令更新远程仓库
git push --force
回过来发现,本地仓库和远程仓库均已删除
以上的删除操作看起来不是很复杂,只是生的东西比较多而已,只要多动手实操几遍就会理解了,本人也是这么过来的。当初是因为不会搜索关键词,导致这个问题被搁置半天之久。现在看来也不过如此,赶快记下来,好记性不如烂笔头。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。