Git常用命令(3)---版本修改

git版本日志

我们已经对文件做了二次修改 也就是说文件具有两个版本。
git支持我们对历史版本记录进行查看。

git log

在这里插入图片描述
Ps:

• git记录了每个文件的提交代码 提交人 提交日期以及提交文件时的备注

• 注意到提交代码后有HEAD->master

• 很敏感可以联想到指针

• HEAD(头指针)是git用来追踪标记git文件状态的指针

• 也就是说再上一次我们二次修改文件后HEAD又重新标记在了master

• 对于工作区 暂存区 版本库三者而言 其实都是用HEAD来标记的

• HEAD指向当前文件所处的文件状态

– git log --pretty=oneline (git log的简洁版 没有先后标注)
在这里插入图片描述
– git reflog(git log简洁版 有先后标注)
在这里插入图片描述
Ps:

• 可以看到对比方式2,日志中多出了HEAD@{0|1}的标记
• 我们知道gitDemo是我们第一次添加时候的备注
• 而HEAD@{1}应该就是标记提交的前后顺序
• 可以发现第二次提交的HEAD是0
• 我首先想到的是栈 第一次的提交状态入栈为0
• 第二次的提交状态入栈为0 第一次为1
• 之后我又提交了一次 发现确实是这样 出现了012 的顺序
• 至于是不是栈的方式储存 我这里没有专门去查

版本回退

知道了历史版本之后 可以根据版本号来回退到之前的版本。
情景:对于已经提交的版本,突然感觉有问题想回退到上一次的版本。

‘’‘cmd
git reflog
git reset --hard version_code
‘’’
在这里插入图片描述
Ps:
• 版本号很长 我们取前面一部分就可以 后面git会为我们补全
git reset --hard HEAD"^" :返回上一次版本
在这里插入图片描述
Ps:
• 注意到HEAD是git的头指针后面跟了“^”
•^代表上一次 因为windows会把^当作转义符 类似/t/n等
• 所以这边用引号括起来 或者 可以直接用~1|2|3 代表回退版本
• 另外 这里再一次说明 git使用HEAD头指针的移动来控制版本的 并不是文件本身恢复与删除 它记录的只是文件每次版本做过的修改。
• 如果此时又后悔返回了 可以根据日志版本号回到最新

撤销修改

撤销对工作区的修改 git check – file.后缀名
撤销对暂存区的修改 git reset HEAD file.后缀名

删除文件

已经提交到本地仓库的文件 删除分两种情况:
–1 确认删除
确认删除就是把本地文件删除后 提交删除命令 将仓库内记录也删除
git rm file.txt
git commit -m"remove file
在这里插入图片描述
如果之前把文件push远程仓库的话 把这个删除的commit也push到远程即可删除远程仓库文件。

– 2 删错了

git checkout – file.后缀名 因为删除文件其实是工作区域的修改 所以撤销修改即可。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值