git 命令 - checkout 和 switch 之间的区别

wz7*_*475 3 git version-control

什么之间的区别 git checkout -b branch_nameVS git switch -c branch_name

我尝试了 git command -h 作为寻找解决方案的方法,我正在文档中寻找它。无论哪种方式,我都设法找到了它。在 git 的文档中,我发现了这个:

请注意,这将创建新分支,但不会将工作树切换到它;使用“git switch”切换到新分支。

但是无论我输入 checkout 还是 switch commnad,我当前的分支都被更改了。

Dom*_*ski 5

一般来说,正如评论中提到的,就您可以对分支执行的操作而言,git switch&之间没有实际区别git checkout

创建git switch&的想法是git restore因为它们是一起引入的,源于新用户对git checkout. 以前,您可以使用git checkouttoswitch到不同的分支,但也可以使用它来restore更改某些特定提交,甚至还原单个文件的更改。

一些用户注意到的问题是,对提交/文件的操作和对分支的操作​​有很大不同,将它们按单个命令分组可能会很麻烦。这就是为什么引入restore了两个新命令来允许恢复更改并switch允许在分支上进行操作。

所以,总结一下,有没有什么区别git switch,并git checkout在开关分支有什么区别的术语git restoregit checkout恢复的文件或提交更改的条款。您可以互换使用它们。唯一需要记住的是switch&restore仍然被标记为实验性的,所以我不会使用它们来创建长期存在的脚本。