wz7*_*475 3 git version-control
什么之间的区别
git checkout -b branch_name
VS git switch -c branch_name
?
我尝试了 git command -h 作为寻找解决方案的方法,我正在文档中寻找它。无论哪种方式,我都设法找到了它。在 git 的文档中,我发现了这个:
请注意,这将创建新分支,但不会将工作树切换到它;使用“git switch”切换到新分支。
但是无论我输入 checkout 还是 switch commnad,我当前的分支都被更改了。
一般来说,正如评论中提到的,就您可以对分支执行的操作而言,git switch
&之间没有实际区别git checkout
。
创建git switch
&的想法是git restore
因为它们是一起引入的,源于新用户对git checkout
. 以前,您可以使用git checkout
toswitch
到不同的分支,但也可以使用它来restore
更改某些特定提交,甚至还原单个文件的更改。
一些用户注意到的问题是,对提交/文件的操作和对分支的操作有很大不同,将它们按单个命令分组可能会很麻烦。这就是为什么引入restore
了两个新命令来允许恢复更改并switch
允许在分支上进行操作。
所以,总结一下,有没有什么区别git switch
,并git checkout
在开关分支有什么区别的术语git restore
和git checkout
恢复的文件或提交更改的条款。您可以互换使用它们。唯一需要记住的是switch
&restore
仍然被标记为实验性的,所以我不会使用它们来创建长期存在的脚本。