Вопрос по version-control, git-branch, git, git-diff, git-checkout – почему я не могу оформить заказ на другую ветку git?

2
$ git branch -a
* master
  remotes/origin/HEAD -> origin/master
  remotes/origin/lab_master
  remotes/origin/master

$ git checkout lab_master
error: Your local changes to the following files would be overwritten by checkou                                                                                                                           t:
        **project.properties**
Please, commit your changes or stash them before you can switch branches.
Aborting

почему я просто не смог оформить заказ на ветку lab_master?

Другой вопрос: почему я не могу сравнить текущий файл с файлом в другой ветке?

$ git diff project.properties -b lab_master
fatal: bad flag '-b' used after filename

Ваш Ответ

3   ответа
1
проблема в том, что я хочу зафиксировать изменения в ветке lab_master, а не в текущей ветке master ... hugemeow
0

Это противоречит вашему желанию обратиться к другой ветке. Для этого вам нужно использовать «git diff master..anotherbranch»

9

потому что это отменит некоторые изменения, которые вы применили к файлуproject.properties, Вы можете либо выбросить изменения, используяgit checkout -f lab_master или спрятать их сначала черезgit stash (а такжеgit stash pop после того, как вы проверили другую ветку.) Если вы уверены, что хотите сохранить изменения, вы также можете просто зафиксировать их.

@ Hugemeow: да, это может
так можно ли использовать git stash в разных ветках? hugemeow

Похожие вопросы