2012-01-31 3 views
1

Я хочу переключиться на удаленную ветку в Git. В чем разница этих команд?Git checkout to remote branch

git checkout -b feature1 origin/feature1 и

git checkout --track origin/feature1

+3

FYI - в последних версиях Git вы можете просто «git checkout feature1» и (при условии, что у вас нет локальной ветви с именем 'feature1'). Git правильно догадается, что вы хотите создать новую локальную ветвь с именем' feature1', которая треки 'origin/feature1'. – meagar

ответ

2

Те делают то же самое, создавая местное отделение под названием feature1, начиная с текущей позиции origin/feature1 и отслеживания feature1 ветви происхождения (в то, что знает, где тянуть с). Это обычно может быть понято из страницы руководства, под --track:

Если ни -b не задана опция, название новой ветви будут получены от удаленного отслеживания ветви. ... Это скажет нам использовать «взломать» как локальную ветвь при ветвлении «origin/hack» ...

Я считаю, что в старых версиях Git второй, возможно, не сработал, но если это не важно для вас, вы можете просто не беспокоиться об этом. На протяжении многих лет было много разных «делать то, что я имею в виду» улучшения пользовательского интерфейса.