Используйте следующее:
git checkout -b <new-branch>
Это оставит вашу текущую ветку как есть, создаст и извлечет новую ветку и сохранит все ваши изменения. Затем вы можете вносить изменения в файлы для фиксации:
git add <files>
и добавьте в свою новую ветку :
git commit -m "<Brief description of this commit>"
Изменения в рабочем каталоге и внесенные в индекс изменения еще не принадлежат ни одной ветви . Это изменяет ветку, в которой эти модификации заканчиваются.
Вы не сбрасываете исходную ветку, она остается как есть. Последний коммит <old-branch>
останется прежним. Поэтому вы checkout -b
и потом совершаете.
Обновление 2020 / Git 2.23
Git 2.23 добавляет новый switch
подкоманду в попытке очистить часть путаницы, возникающей из-за перегруженного использования checkout
(переключение веток, восстановление файлов, отсоединение HEAD и т. Д.)
Начиная с этой версии Git, замените вышеприведенную команду на:
git switch -c <new-branch>
Поведение идентично и остается неизменным.