git两个新指令:git switch和git restore

5,436 阅读1分钟

今天无意中发现


已经从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