Мне трудно понять некоторые концепции git / DCVS. Вот что случилось:
- Я создал проект git и импортировал его из репозитория SVN
- Я сделал несколько коммитов
- Я хотел что-то поэкспериментировать, поэтому я создал ветку с именем constants-update
- Я переключился на ветку constants-update , переместил некоторые файлы, удалил другие и добавил еще
- Я посвятил эту ветку
- Теперь я пытаюсь переключиться на свою основную ветку, используя
git checkout master
- Я получил эту ошибку: ошибка: у вас есть локальные изменения в 'src / groovy / Constants.groovy'; не может переключать ветви.
Мое понимание DCVS заключается в том, что я могу переключать ветви по своему желанию, даже если в одной ветви больше или меньше файлов, чем в других, если я фиксирую свои файлы. Я попытался зафиксировать с git commit -a
и переключиться на главную ветку, но у меня та же ошибка.
В качестве примечания, когда я фиксирую git, он предупреждает меня о том, что LF будет заменен CRLF, и также предупреждает меня о некоторых конечных пробелах; после коммита я делаю git status
, и группа файлов всегда отображается как #modified ...
.
Это связано с git / windows , или я не правильно понимаю, что это должно произойти? Я просто хочу переключиться на свою основную ветку , не теряя свои изменения в другой ветке.