Git объединение из другой ветви возвращает код - PullRequest
0 голосов
/ 11 апреля 2020

Я добавил изображение, которое описывает поток наших git коммитов. В основном, два пользователя проверяют развивающую ветку. Затем они создают свои собственные ветви функций и вносят изменения в один файл (разные части файла, поэтому никаких конфликтов). Первый пользователь изменяет файл и рано сливается с веткой разработки. Позже второй пользователь, который работал над более ранней копией файла, вносит свои новые изменения, объединяется и для разработки. Слияние от второго пользователя сливается без конфликта, но отменяет изменения, сделанные первым пользователем. Как мы можем предотвратить это? Иногда незначительные детали пропускаются при просмотре запросов извлечения, в которых нет конфликтов слияния.

enter image description here

Ответы [ 4 ]

1 голос
/ 11 апреля 2020

Попробуйте выполнить перебазирование и исправить конфликты, которые могут возникнуть:

git rebase origin/BRANCH

Затем, если возникнет конфликт, попробуйте сначала исправить его.

Это позволит убедиться, что их изменения дойдут до Вы сначала, и вы можете иметь дело с ними, прежде чем совершить / pu sh. Всегда лучше сделать ребаз, чтобы сделанные вами изменения все еще были в коммите.

1 голос
/ 11 апреля 2020

Вот решение, приведенное ниже: Два пользователя и две ветви функций

1.Первый пользователь объединяет изменения FeatureBranch1 для разработки 2. Второй пользователь вносит изменения в FeatureBranch2, но второй пользователь должен выполнить следующие шаги, чтобы включить изменения, сделанные первым пользователем в ветви разработки после слияния

git rebase development (Это перемещает весь элемент FeatureBranch2, чтобы он начинался на кончике ветви разработки, эффективно объединяя все новые коммиты в разработке)

1 голос
/ 11 апреля 2020

Пожалуйста, попросите второго пользователя вытащить изменения из разработки до слияния.

git pull --rebase
0 голосов
/ 27 апреля 2020

Извините за задержку ответа. Решение было проще, чем использовать rebase. Второй пользователь должен просто позвонить git pull origin development, оставаясь в своей ветви функций, прежде чем объединить запрос на извлечение. Если во время вытягивания возникают конфликты, пользователь должен разрешить конфликты и положить sh в свою ветку. Затем рецензент должен еще раз просмотреть запрос на получение и одобрить.

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