Git: «Ваша ветвь впереди .. на 6 коммитов». после вытягивания с пульта - PullRequest
0 голосов
/ 03 февраля 2020

Я получаю это сообщение после извлечения обновленной версии из удаленного репозитория. Число увеличивается на единицу каждый раз.

Проблема заключается в том, что git создает новый коммит для каждого запроса на извлечение который просто записывает в локальном репозитории, что я вытащил новую версию, а git status подразумевает, что я должен затем вернуть sh это обратно на пульт. Кажется, не имеет смысла записывать это действие обратно в пульт, поэтому мне было интересно, есть ли способ избежать этого.

Один совет Я наткнулся на сообщение с 6 лет go - git pull --rebase. Было предупреждение, что это может создать проблемы на будущее. Во всяком случае, я дал ему попробовать, когда git status показывал, что у меня было 6 коммитов вперед, и это удалило сообщение о коммитах. Должен ли я всегда использовать git pull --rebase вместо git pull для всех будущих обновлений? В качестве альтернативы, есть ли сейчас способ настроить git, чтобы избежать этих предупреждений о том, что он должен быть впереди удаленного?

1 Ответ

0 голосов
/ 03 февраля 2020

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

Перед использованием rebase Вы должны иметь в виду следующие моменты:

  1. Является ли ветка, от которой вы получаете изменения, доступной для других разработчиков за пределами вашей команды (например, open source, publi c)? Если это так, не перебазируйте. Rebase разрушает ветку, и эти разработчики будут иметь поврежденные / несогласованные репозитории, если они не будут использовать git pull --rebase.

  2. Rebase - разрушительная операция. Это означает, что, если вы не примените его правильно, вы можете потерять совершенную работу и / или нарушить целостность репозиториев других разработчиков.

  3. Можете ли вы отменить слияние по какой-либо причине? Возврат (как при отмене) перебазирования является значительно трудным и / или невозможным (если у перебазирования были конфликты) по сравнению с возвратом слияния. Если вы считаете, что есть шанс вернуться, используйте merge.

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