自从引入了git switch,git checkout还有什么作用?

19

众所周知,git checkout是一个非常重载的命令。 我了解到某些命令被引入以进行分发,例如git switch

在使用git switch命令之前,我使用以下命令:

$ git checkout <existing-branch>
$ git checkout <hash>
$ git checkout -b <new-branch-name>

我想知道在git switch出现之后,git-checkout还有什么作用?这个命令已经被弃用了吗?


git-checkout 也可以用来恢复工作区文件。(编辑:似乎你可以使用 git-restore 来实现) - Edric
3
这个问题的回答是否解决了你的疑问?「git switch」和「git checkout <branch>」有什么不同? - evolutionxbox
2
谢谢,但不幸的是它并没有。它只说了git switch有什么好处,但没有提到留下了什么。 - HelloWorld
2
git checkout 命令当然仍然可以执行它以前的所有功能。:-) 实际上,它已经得到了改进:它以前会破坏工作的不良行为现在变成了一个抱怨,即该命令是模棱两可的。(switchrestore 没有这个问题。) - torek
1个回答

21

为了向后兼容性而保留。想想有数百万脚本仍然使用git checkout,我们应该急于重写所有这些脚本吗?当然不是。

实际上它甚至没有被弃用。在文档中没有关于弃用的内容。另一方面,git restoregit switch的文档中则提到:“此命令是实验性的,行为可能会改变。”


这非常有用。因为你指出了这一点,我在我的答案中添加了关于命令是实验性的信息:从另一个分支创建git分支的各种方法 - Gabriel Staples

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接