我使用git checkout -b来创建一个新分支。我认为git分支做同样的事情。 如果这两个命令有区别的话,它们有什么不同?


git checkout -b BRANCH_NAME创建一个新分支并签出新分支,而git branch BRANCH_NAME创建一个新分支,但将你留在同一个分支上。

换句话说,git checkout -b BRANCH_NAME为您执行以下操作。

git branch BRANCH_NAME    # create a new branch
git switch BRANCH_NAME    # then switch to the new branch

Git分支创建了分支,但您仍然停留在已签出的当前分支中。

Git checkout -b创建一个分支并签出它。

它可以被认为是:

git branch name
git checkout name

git branch:显示你所有的分支 git branch newbranch:创建一个新的分支 git checkout -b newbranch:创建一个新的分支,并立即切换到该分支。这与git branch newbranch后面跟着git checkout newbranch相同。


还有一个标志要提到,这是相对于这些。

git checkout -B BRANCH_NAME

这是一个非常有用的命令,我最近一直在使用。这个命令签出您指定的分支,并根据源分支重置分支。


完整的语法:

git checkout -b [NEW_BRANCH] [FROM_BRANCH]

[FROM_BRANCH]是可选的。如果没有FROM_BRANCH, git将使用当前的分支。


这两个命令的一些形式是相似的(参见git-scm docs Version 2.11.1):

git branch <branchname> <start-point>

and

git checkout -b <new_branch> <start_point>

后者首先执行分支命令,然后添加签出。在这个表单中,显式引用git-branch的doc:

指定-b会创建一个新的分支,就像git-branch[2]一样 打电话,然后退房


从本质上讲:

git分支允许您简单地创建一个分支。

B -git checkout -b允许你创建一个分支并同时切换到它。

什么时候用哪个? 1- git分支,当你想创建一个分支,但保持在当前分支。 2- git checkout -b当你想创建和切换。 你可以直观地创建一个分支并切换到它。所以选择是你的:)