Git - 常用命令(高级)

本文详细介绍了Git中的关键命令,包括重置暂存区、恢复工作区、检出分支和文件、管理stash、查看日志和文件修改历史等。通过具体示例展示了如何使用这些命令进行版本控制操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

git reset

重置暂存区中的文件到工作区:

git reset

重置最近一次提交,把HEAD向前移动一步,并把最近一次的commit信息删除,而最近一次的提交修改保存到暂存区中:

git reset HEAD^

重置当前分支到某一个commit:

git reset commit-id

此时会把当前分支HEAD设置为该commit,并且在之后的提交修改全部保存到暂存区中。
完全重置到某一个commit:

git reset commit-id --har

此时会把当前工作区完全恢复到该commit id对应的位置,并且不再暂存之后的修改。

git checkout

检出某个分支的某个文件:

git checkout branch -- filename

创建一个空分支

git  checkout --orphan empty_branch

冲突解决时保留本分支的内容:

git checkout --ours

冲突解决时保留其他分支的修改:

git checkout --theirs

git stash

打印git stash使用帮助

git stash help

应用最近stash的修改,并删除最近的最近一次的stash

git stash pop

创建一个stash

git stash

显示已经缓存的stash

git stash list

输出信息如下所示:

stash@{0}: WIP on M2091-QQ_bsp: 096653e [BSP] boot: Update charger mode check interface.

删除某一个stash缓存

 git stash drop [stash@{id}]

清除所有stash缓存

 git stash clear
  • 查看一个stash
git stash show [<stash>]
  • 应用一个stash
git stash apply [--index] [<stash>]

git log

按照数量显示

git log -20

按照作者显示

git log --author=myname

显示提交内容

git log --stat
git log -p

单行显示

git log --oneline

显示tag和分支信息

git log  --oneline --decorate

自定义显示内容

git log --pretty=format:"%cn committed %h on %cd"

按照commit id范围显示

git log master...3oea685e1

按照时间显示

git log --after="2019-5-1" --before="2019-5-2"

git blame

这个命令可以用来查看某一行或者几行被谁修改过,比如:
查看第1行被谁修改过:

git blame -L  1,1  test.c

查看第5-10行被谁修改过:

git blame -L  5,10  test.c

欢迎扫码关注我的公众号!
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值