Git(Linux环境):文件删除以及版本回退

目录

文件删除

从工作目录中删除

从工作目录和暂存区中删除

从暂存区中删除,工作目录中保留

从版本库中删除:版本回退到错误提交前的本

撤销到暂存区:git reset --soft SHA1

撤销提交到工作区:git reset --mixed SHA1

将工作区、暂存区和版本库恢复到指定版本:git reset --hard SHA1

小结


文件删除

从工作目录中删除

从工作目录和暂存区中删除

  • 方式一:通过linux系统命令删除文件(表面删除,实质仍在暂存区和版本库中)
    • 需要将删除添加至暂存区并提交,才能真正的删除

  • 方式二:使用“git rm -f  file.c”,不仅从工作区删除了,而且从暂存区也删除了,只需提交即可

  • 避免文件出现在未跟踪清单中
  • 删除并提交后,该文件就不再被版本库追踪,但是版本库中仍然有这些文件的快照

从暂存区中删除,工作目录中保留

  • 一个工程里生成的bin文件或者其他不需要的文件(包括:库文件、可执行文件、日志、临时文件)误添加到暂存区中

  • 此时,不需要test.bin加入暂存区,只想留在工作区。执行命令:git rm -cached file.c

从版本库中删除:版本回退到错误提交前的本

  • 撤销提交至版本库的内容

撤销到暂存区:git reset --soft SHA1

  • 误将文件提交到版本库中,想将文件从版本库撤回到暂存区

  • git reset --soft HEAD^ 恢复到最新提交的前一次commit,将本次提交的内容恢复到暂存区,本次提交的历史记录消失

  • 接下来,可以将回退到暂存区的文件进行git rm -cached file.c等操作

撤销提交到工作区:git reset --mixed SHA1

  • 为了演示,再次将前面的内容进行提交

  • git reset --mixed HEAD^ 恢复到最新提交的前一次commit,将本次提交的内容恢复到工作区,本次提交的历史记录消失

  • 然后可对文件进行修改,提交至暂存区,再提交至版本库

将工作区、暂存区和版本库恢复到指定版本:git reset --hard SHA1

  • 恢复到指定版本后,前面的做得工作全部清除,记录清除,内容无法恢复(不建议使用这个命令)

小结

  • 删除也算一个修改,也可以从版本库中还原
  • 删除一个文件提交了,可以回退到上一个版本进行补救。
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值