今天无意中发现
已经从git reset变成restore了,顺手去查了一下,发现是去年下半年发布的API,惭愧,正好年前总结一下。
一句话概括:这两个指令是为了分离checkout的职责
相信刚接触git的时候,都会和我一样,被checkout繁杂的命令苦恼,一会是切换分支,一会是恢复文件,职责混乱。这两个指令正是为了分离checkout的职责。
git switch:类似于git checkout,参数有:
-c <new-branch>:等同于原来的-b
-m:merge
-t:track
git restore: 类似git checkout --
--staged 从stage中恢复至work tree中
restore和checkout不影响commit history,想改变历史记录请使用reset