场景
如果某天下午张三家里突然有事回家了,忘了提交今天写好的那个部门管理的功能,第二天过来接着继续写代码完成了另外一个员工管理的功能,然后一下子 git add --all .
,将昨天和今天写好的代码一起都放入暂存区
突然,张三想到好像应该将这批代码分成两次提交,才能符合公司的规范啊!
实践
git add -i
此时需要先执行r如上命令,进入交互式模式
它会给你列出来当前暂存区里所有的文件和内容,以及没加入暂存区的文件和内容,还有一堆可以执行命令。根据各种指令以及选择文件,可以将暂存区中的部门管理功能对应的文件和代码,从暂存区里 unstage 出来。
根据提示,先选3,表示将要做的操作是把文件从暂存区里 revert 出来。选择要从暂存区里 revert 出来的文件,选中后该文件的前面会带有一个 “*”
标识。然后回车,可以看到部门管理相关的文件已经是 untracked 状态了。完成操作后选择7退出。
查看下此时 git 的 status