Quelle est la différence entre "git branch" et "git checkout -b"?

J'ai utilisé git checkout -b pour créer une nouvelle branche. Je pense que git branch fait la même chose. Comment ces deux commandes diffèrent, si elles diffèrent du tout?

144
demandé sur Coleman 2011-11-03 01:44:36

7 réponses

git checkout -b BRANCH_NAME crée une nouvelle branche et vérifie la nouvelle direction git branch BRANCH_NAME crée une nouvelle branche, mais vous laisse sur la même branche.

En d'autres termes git checkout -b BRANCH_NAME fait ce qui suit pour vous.

git branch BRANCH_NAME    # create a new branch
git checkout BRANCH_NAME  # then switch to the new branch
199
répondu Fatih 2017-10-05 00:23:35

git branch crée la branche, mais vous restez dans la branche que vous avez extrait.

git checkout -b crée une branche et la vérifie.

C'est l'abréviation de:

git branch name
git checkout name
40
répondu manojlds 2011-11-02 21:53:44
  • git branch: Montre toutes vos succursales
  • git branch newbranch: Crée une nouvelle branche
  • git checkout -b newbranch: Crée une nouvelle branche et passe à la branche immédiatement. C'est la même chose que git branch newbranch suivi de git checkout newbranch.
21
répondu Michel Pereira 2016-08-05 17:35:51

Syntaxe Complète:

git checkout -b [NEW_BRANCH] [FROM_BRANCH]

Le [FROM_BRANCH] est facultatif. S'il N'y a pas de FROM_BRANCH, git utilisera la branche actuelle.

16
répondu Tuong Le 2013-12-05 02:28:38

Il y a aussi un autre drapeau à mentionner, qui est relatif à ceux-ci..

git checkout -B BRANCH_NAME

C'est une commande très utile que j'ai utilisé récemment. Cette commande vérifie la branche que vous spécifiez et réinitialise la branche en fonction de la branche source.

3
répondu sircapsalot 2013-10-03 15:50:39

Il existe des formes des deux commandes qui sont similaires (en regardant git-scm docs version 2.11.1):

git branch <branchname> <start-point>

Et

git checkout -b <new_branch> <start_point>

Le dernier exécute d'abord la commande de branche, puis ajoute la caisse. Sous cette forme, des références explicites au doc de git-branch:

Spécifier -b provoque la création d'une nouvelle branche comme si git-branch[2] ont été appelés puis vérifiés

0
répondu Przemek108 2017-02-21 13:59:59

Essentiellement :

Une branche-git vous permet de créer une branche simple et simple.

B -git checkout -b vous permet de créer une branche et y passer en même temps.

Quand utiliserez-vous qui ? 1 - branche git lorsque vous souhaitez créer une branche, mais rester sur la branche courante. 2-git checkout-b lorsque vous voulez créer et changer. Si vous regardez, il est intuitif de créer une branche et y passer. Donc, le choix est le vôtre :)

0
répondu user2238769 2017-11-19 14:58:56