Git переключиться на мастер и принести неотслеживаемые файлы вместе - PullRequest
5 голосов
/ 20 февраля 2011

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

Как я могу переключиться на мастер и взять с собой неотслеживаемые файлы?

Ответы [ 3 ]

18 голосов
/ 20 февраля 2011

Что-то не так. Обычно, когда вы переключаете ветки, неотслеживаемые файлы доставляются вместе с вами без предварительного уведомления. Вот почему они называются "неотслеживаемыми". Однако вы говорите, что неотслеживаемые файлы будут перезаписаны. Это означает, что вы создали неотслеживаемый файл в новой ветви, которая уже существует в основной ветви. Это означает, что вы должны решить, что вы хотите сделать: что оставить. Дело не в том, чтобы заставить мерзавца что-то делать, а в том, что вы не понимаете, что вы хотите от него.

Предполагая, что вы хотите как-то разрешить конфликт между двумя копиями одного и того же файла, вы можете сделать

git checkout feature_branch
git stash
git checkout master
git stash pop

А затем разрешите возникшие конфликты.

3 голосов
/ 20 февраля 2011

Один из подходов к этой проблеме - сохранить ваши изменения, а затем восстановить их на главном компьютере.

  1. Убедитесь, что вы зафиксировали все остальное, что не связано с этим исправлением ошибки
  2. Выполнить git stash save "bug fix for master"
  3. git checkout master
  4. git stash pop
  5. Разрешение любых конфликтов, возникающих из-за всплывающего окна
  6. Передайте это исправление мастеру
  7. Вернитесь к своей ветви функций
0 голосов
/ 20 февраля 2011

Самое простое решение, о котором я могу подумать, - это сделать локальную копию ваших неотслеженных / измененных файлов. Затем оформите ваш мастер, перезагрузите и добавьте коммит оттуда Если возникнут какие-либо конфликты, git уведомит вас, и вы сможете объединиться в этот момент.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...