idea git log 面板
git log 面板
解释
cherry pick
reset current branch to here
情形1:提交了多次错误的提交,想回滚到之前的某次提交。
情形2:合并了错误的分支,想回滚到合并之前。
状态: 修改前,修改后 add 前(蓝色),add 后(蓝色)
soft 恢复到 add后,文件为蓝色,git status 显示文件都是绿色。
mixed 恢复到 修改后add前,文件蓝色,git status 显示红色
hard 恢复到修改前,git status 什么都不显示,暂存区被清空
--merge --keep 这两个选项的效果是保留修改的差异部分。 如果回退的内容与保留的修改存在冲突(有相同文件)则命令会失败.。
git reset --merge 保留 工作区和index之间的差异。
git reset --keep 保留工作区和HEAD之间的差异。
revert commit
同样是回滚到所选提交记录,但是会产生一个 commit
,将所选 commit 的修改改到修改之前的状态
参考 idea如何使用【Revert Commit】
undo commit
恢复到 commit 之前的 暂存区,修改的文件已经 add 了
edit commit message
可以修改自己 commit
的 message
fixed up
修改文件,commit 后,再次修改,commit 处右键 fixed up ,会新建一个 commit
,默认 message { fixup ! commit 的 message }
squash into
修改文件,commit 后,再次修改,commit 处右键 squash into ,会新建一个 commit
,默认 message { squash ! commit 的 message }
drop commit
commit 的修改被 丢弃 ,不会存在于暂存区或工作区
interactively rebase from here
选中要rebase 到的 commit ,右击
HEAD 和 HEAD^ 和 HEAD~
go to parent commit
当前分支
的上一个提交