git checkout -b branch_name和git switch -c branch_name的区别是什么?
我尝试使用git命令-h作为找到解决方案的方法,并在文档中寻找它。我都没办法找到它。在git的文档中,我发现了这个:
注意,这将创建新分支,但它不会将工作树切换到它;使用"git“切换到新分支。
但是,无论我输入结账还是切换逗号,我的当前分支都被更改了。
发布于 2020-03-23 16:36:18
通常,正如注释中提到的那样,git switch和git checkout在使用分支方面没有实际区别。
创建git switch和git restore的想法是因为它们是一起引入的,这种想法产生于许多问题&新用户在git checkout中遇到的问题。在此之前,您可以使用git checkout到switch到不同的分支,但也可以使用它来更改某个特定的提交,甚至可以恢复单个文件的更改。
一些用户注意到的问题是,对提交/文件的操作与对分支的操作是完全不同的,让它们按单个命令分组可能会很麻烦。这就是为什么引入了两个新命令restore以允许恢复更改和switch允许在分支上进行操作。
因此,总而言之,git switch和git checkout在切换分支方面没有区别,git restore和git checkout在文件或提交的恢复更改方面也没有区别。你可以交替使用它们。唯一需要记住的是,switch & restore仍然被标记为实验性的,所以我不会使用它们来创建长寿的脚本。
https://stackoverflow.com/questions/60816327
复制相似问题