git
的时候时不时会遇到一些非add, commit, push
的情况,也查过不少相关的高级用法,但往往就用一次之后就忘记了,最近看了篇文章,顺着这篇文章也捋一下git
的高级用法以备后用。git log --oneline
# 简介明了的git日志, 一行就很明了的日志打印形式git checkout -
# 回到切换分支之前的分支, 类似于cd -
切换回之前的工作目录git log --all --grep='homepage'
# 在所有提交日志中搜索包含「homepage」的提交git log --author="Maxence"
# 获取某人的提交日志git commit --amend -m "更新后的提交日志"
# 编辑上次提交的messagegit add . && git commit --amend --no-edit
# 在上次提交中附加一些内容,保持提交日志不变git commit --allow-empty -m "chore: re-trigger build"
# 空提交 —— 可以用来重新触发 CI 构建git reflog
# 获取所有操作历史git reset [email protected]{4}
# 重置到相应提交git reset --hard <'commit-hash'>
# ……或者……git diff master..my-branch
git fetch origin
git checkout master
git reset --hard origin/master
git rebase -i HEAD~3
pick
,剩余提交替换为 squash
或 s
:wq
即可保存)fed14a4c
加上一些内容。