Jaka jest różnica pomiędzy "Git branch" a "git checkout-b"?

Użyłem git checkout -b aby utworzyć nową gałąź. Myślę, że git branch robi to samo. Czym różnią się te dwie komendy, jeśli w ogóle się różnią?

Author: Coleman, 2011-11-03

7 answers

git checkout -b BRANCH_NAME tworzy nową gałąź i sprawdza nową gałąź, podczas gdy git branch BRANCH_NAME tworzy nową gałąź, ale pozostawia cię na tej samej gałęzi.

Innymi słowy git checkout -b BRANCH_NAME wykonuje za Ciebie następujące czynności.

git branch BRANCH_NAME    # create a new branch
git checkout BRANCH_NAME  # then switch to the new branch
 199
Author: Fatih,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-10-05 00:23:35

git branch tworzy gałąź, ale pozostajesz w bieżącej gałęzi, którą pobrałeś.

git checkout -b tworzy gałąź i sprawdza ją.

Jest to skrót od:

git branch name
git checkout name
 40
Author: manojlds,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-11-02 21:53:44
  • git branch: pokazuje wszystkie gałęzie
  • git branch newbranch: tworzy nową gałąź
  • git checkout -b newbranch: tworzy nową gałąź i przełącza się do niej natychmiast. Jest to to samo co git branch newbranch, po którym następuje git checkout newbranch.
 21
Author: Michel Pereira,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-05 17:35:51

Pełna składnia:

git checkout -b [NEW_BRANCH] [FROM_BRANCH]

Opcja [FROM_BRANCH] jest opcjonalna. Jeśli nie ma FROM_BRANCH, git użyje bieżącej gałęzi.

 16
Author: Tuong Le,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-12-05 02:28:38

Jest jeszcze inna flaga, która jest względem nich..

git checkout -B BRANCH_NAME

Jest to bardzo przydatne polecenie, które używam ostatnio. To polecenie sprawdza wybraną gałąź i resetuje gałąź na podstawie gałęzi źródłowej.

 3
Author: sircapsalot,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-10-03 15:50:39

Istnieją formy obu komend, które są podobne (patrząc na git-scm Docs w wersji 2.11.1):

git branch <branchname> <start-point>

I

git checkout -b <new_branch> <start_point>

The latter wykonując najpierw polecenie branch, a następnie dodając checkout. W tej formie jawnie odwołuje się do dokumentu git-branch:

Podanie -b powoduje utworzenie nowej gałęzi tak, jakby git-branch[2] zostały wywołane, a następnie sprawdzone

 0
Author: Przemek108,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-02-21 13:59:59

Zasadniczo:

Gałąź-git pozwala na tworzenie gałęzi w prosty i prosty sposób.

B-git checkout-B pozwala na utworzenie gałęzi i przejście do niej w tym samym czasie.

Kiedy użyjesz którego ? 1 - Git branch gdy chcesz utworzyć gałąź, ale pozostań w bieżącej gałęzi. 2-git checkout-b kiedy chcesz utworzyć i przełączyć. Jeśli spojrzeć na to jest intuicyjne, aby utworzyć gałąź i przełączyć się na nią. Więc wybór należy do ciebie:)

 0
Author: user2238769,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-11-19 14:58:56