Я думал, что уже неплохо разбираюсь в Git, но сейчас удивился.Я думал, что ветки изолируют изменения от других веток, поэтому я начал большой экспериментальный рефакторинг в новой ветке.Это рефакторинг, подразумевающий перемещение многих файлов.Когда я переключился на мастер, я все еще мог видеть изменения!
Я пошел в свой репозиторий песочницы, чтобы повторить проблему:
$ git branch crazy-refactoring
$ git checkout crazy-refactoring
$ rm README
$ git checkout master
$ git status
# On branch master
# Changes not staged for commit:
# (use "git add/rm <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# deleted: README
#
no changes added to commit (use "git add" and/or "git commit -a")
$ ls README
ls: cannot access README: No such file or directory
Почему?Весь смысл того, что я создал ветку, заключался в том, что я мог что-то попробовать и выбросить в случае неудачи.Toughts