繁体   English   中英

“git branch”和“git checkout -b”有什么区别?

[英]What is the difference between "git branch" and "git checkout -b"?

我使用git checkout -b创建一个新分支。 我认为git branch做同样的事情。 如果这两个命令完全不同,它们有何不同?

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 branch创建分支,但您仍保留在已签出的当前分支中。

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 [NEW_BRANCH] [FROM_BRANCH]

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

还有一个flag要提,就是相对于这些..

git checkout -B BRANCH_NAME

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

这两个命令的形式相似(查看 git-scm 文档版本 2.11.1):

git branch <branchname> <start-point>

git checkout -b <new_branch> <start_point>

后者首先执行分支命令,然后添加结帐。 以这种形式明确引用 git-branch 的文档:

指定 -b 会导致创建一个新分支,就像调用了 git-branch[2] 然后检出一样

本质上 :

A-git branch 可以让你创建一个简单明了的分支。

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

你什么时候用哪个? 1- git branch 当你想创建一个分支但留在当前分支上时。 2- git checkout -b 当你想创建和切换时。 如果你看一下,创建一个分支并切换到它是很直观的。 所以选择是你的:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM