Git ветки потока расходились
Я использую инструменты потока git, и у меня возникла небольшая проблема. Мои ветки git расходятся. Я прочитал ведущую ветку и "источник/мастер" расходился, как "разделить" ветки"? и попытался выполнить шаги, как пытающиеся объединиться, так и для восстановления моего локального репозитория.
$ git flow feature finish showFindLogs
Branches 'develop' and 'origin/develop' have diverged.
And branch 'develop' may be fast-forwarded.
$ git merge origin/develop
Already up-to-date.
$ git rebase origin/develop
Current branch feature/showFindLogs is up to date.
$ git status
# On branch feature/showFindLogs
nothing to commit (working directory clean)
Как я могу выбраться из этого? Я закончил с функцией потока git, и я просто хотел бы получить мои изменения до пульта. Спасибо!
Ответы
Ответ 1
Что происходит здесь, так это то, что пульт получил обновления, а git -flow требует, чтобы develop
и origin/develop
были в одной и той же фиксации до слияния функции. Это делается для предотвращения плохих конфликтов при публикации ветки.
Чтобы решить эту проблему, вам необходимо:
-
синхронизировать локальный develop
с origin
: checkout develop
и тянуть от origin
до develop
(git checkout develop && git pull origin
)
-
обновите свою функцию на develop
с помощью git flow feature rebase showFindLogs
. У вас могут быть конфликты здесь, если вам не повезло.
-
убедитесь, что он ничего не сломал
-
git flow feature finish showFindLogs
Ответ 2
вы также можете захотеть ((если он официально не поддерживается), и используйте мой
git-flow feature finish -p
опция
https://github.com/nvie/gitflow/pull/253
Ответ 3
Убедитесь, что ветвь develop
не находится позади, возможно, вам нужно выполнить
git checkout develop
git pull
git checkout release/x.x.x
И продолжите процесс выпуска
Ответ 4
Вы можете получить из $ORIGIN перед финишем с помощью этой команды:
git flow feature finish -F <name>
(docs)
Ответ 5
Для тех, кто ищет эту ошибку и использует Hub-Flow - просто выполните:
git hf update
Ответ 6
Для решения этой проблемы вы можете использовать мою реализацию потока git на основе решения @childno..de.
git flow feature/hotfix/release/bugfix -e finish <name>
Чтобы установить git поток выполнить в консоли:
git clone https://github.com/wyhasany/gitflow-avh/;cd gitflow-avh/;git checkout feature/force_merge;git pull;sudo make install