一. 日志查看
1. 查看git日志
单行显示
git log --onneline
该命令可将每条日志输出为一行,提交历史一目了然!
显示指定条数
git log -3
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iEYTGWSV-1677996049258)(null)]
这里的’3’可以是其他任何数字n,表示只显示n条日志.
跳过指定条数
git log --skip=3
可以看到,使用–skip后,commitId为f2db4ba的提交记录显示在第一条.跳过了前3条记录.
列出改动的文件
git log --name-status
这是一个非常有用的命令,结合–oneline参数就可以清晰的看到每次提交做了什么,改变了哪些文件.
2. 搜索git日志
1).通过作者:
git log --author yourname
yourname可包含通配符.
如果提交说明写得好,通过这个命令可以大致看出一位开发者近段时间在做哪个业务模块的开发工作.
2).通过关键字
git log --grep keywords
3).通过文件名
git log -p -- filepath
这里的filepath是完整文件名的相对地址.
如果把-p
换成--name-status
那就有点在idea中右键文件–>GIT–>showHistory的意思了!
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qbwJtT6K-1677996049222)(null)]
二. 分支操作
# 创建并切换到新分支
git check -b newbranch
# 更新当前的远程跟踪分支
git fetch
# 删除本地分支
git branch -D branchname
# 删除远程分支
git push origin --delete branchname
三. commit操作
回滚
# 1. 用新的提交回滚某次提交的内容.新增commit
git revert commitId
# 回滚到上一次提交
git reset --hard HEAD
# 回滚到指定提交
git reset --hard commitId
取消暂存的文件
git reset HEAD
撤销对文件的修改
git checkout –
实验
从上图可以看出,输入git status命令后.git 已经给出了非常明显的提示.下面我们照着敲命令就可以了.
先来撤销暂存的文件:
git reset HEAD personal-parent/personal-inter/personal-inter-server/src/main/java/com/asiainfo/inter/server/csf/sv/impl/Crm4EsopServiceSVImpl.java
git输出如下信息,Crm4EsopServiceSVImpl文件已经进入未暂存列表.
然后撤销文件修改:
git checkout – personal-parent/personal-inter/personal-inter-server/src/main/java/com/asiainfo/inter/server/csf/sv/impl/Crm4EsopServiceSVImpl.java
Crm4EsopServiceSVImpl文件已经移出未暂存区域了.