git教程之回到过去,版本对比

回到回去

git reset 命令的选项

1.git reset --mixed HEAD~ (默认)

-移动HEAD的指向,将其指向上一个快照

-将HEAD移动后指向的快照回滚到暂存区域

2.git reset --soft HEAD~

-移动HEAD的指向,将其指向上一个快照(相当于撤销commit)

3.git reset --hard HEAD~

-移动HEAD的指向,将其指向上一个快照

-将HEAD移动后指向的快照回滚到暂存区域

-将暂存区域的文件还原到工作目录

 

 

reset 回滚到指定快照

git reset id号(建议是5位)

当还原到最老id时,如果知道最新id 可以回滚到最新快照,即使他已经被旧版本覆盖(hard)

 

reset 回滚个别文件

git reset 版本快照 文件名/路径(忽略HEAD指针的改变)

 

版本对比

1.比较暂存区域和本地工作目录

git diff

diff --git a/README.md    b/README.md
#表示分布把暂存目录和工作目录的文件放置在自动生成的a/b文件夹下,比较两个文件夹

---a/README.md #暂存区域
+++b/README.md #工作目录 新(+)
搜索
#/+关键词 从上往下搜索
#?+关键词 从下往上搜索
q退出

比较两个历史快照:

git diff 快照ID1 快照ID2

 

比较暂存区域和git仓库的快照

git diff --cached 快照id

修改最后一次提交

1.在实际开发过程中,你可能遇到以下两种情景:

情景1:版本刚一提交(commit)到仓库,突然想起漏掉两个文件还没有(add)

情景2:版本刚一提交(commit)到仓库,突然想起版本说明写的不够全面,无法彰显你本次修改的重 大意义

 

执行带 --amemd 选项的 commit提交命令,Git 就会''更正''最近的一次提交

git commit --amend

删除文件

git rm 文件名

该命令删除的只是工作目录和暂存区域的文件,也就是取消跟踪,在下次提交的时候不纳入版本管理。

然后soft HEAD 回到过去

 

重命名文件

git mv 旧文件名 新文件名

 

 

 

 

 

原文地址:https://www.cnblogs.com/pythonyeyu/p/10951151.html