Я читал много статей, но все же мне это не ясно. Скажем, у меня есть проект с двумя ветвями: master и dev. Dev держит ветку разработки и управляет стабильной ветвью - с готовым к выпуску кодом.Правильный способ работы с слияниями гитов
Вопрос 1:
Я хочу добавить некоторые функции Деву ветки - так я создаю еще один филиал на основе разработчика - давайте назовем его: Feature/1/Некоторой-функция-описание, эта функция является большой, поэтому я разделил его на три разных направления: Feature/1.1/Some-sub-feature-description, Feature/1.2/Some-sub-feature-description и Feature/1.3/Some-sub-feature-description
Итак, я начал работать с функцией 1.1, я написал код, и при этом я обнаружил ошибку (не связанную напрямую с вспомогательной функцией 1.1 или основной функцией 1), что мне делать? Я вижу несколько возможных решений:
Переключитесь обратно на мой Dev отрасли, создать еще одну ветвь (Fix/1/Некоторые затруднительного-описание), исправить эту проблему, объединить Фикс филиал в Dev отрасли, переход на Feature 1 (главная ветвь функции) объединяет изменения с dev, переключается на суб. Функция 1.1 объединяет изменения с dev.
Устранить проблему внутри Feature 1.1 (или создать другую ветвь исправления на основе Feature 1.1, устранить проблему и слить ее обратно в ветку Feature 1.1), когда эта функция будет завершена - объединить ее с большой ветвью Feature 1 , и когда это будет завершено, объедините его с dev.
Какой правильный (лучший) способ сделать это в одном и нескольких проектах разработчиков? Возможно, есть еще один способ, о котором я не знаю?
Вопрос 2:
После того как я слил мой Feature/1.1/ветвь с Feature/1 /, я нашел ошибку в моей Feature/1.1/коде, или я просто хочу, чтобы внести некоторые изменения там - все в порядке, чтобы вернуться к функции/1.1 /, слить текущую функцию/1/ветвь, внести свои изменения, а затем объединить их обратно в функцию/1 /? Или мне нужно создать еще одну ветку на основе текущего кода Feature/1/для внесения изменений?
Как всегда, заблаговременно за ответы.
С уважением.
Спасибо за ответ. Q1: Поскольку я разрабатываю свое приложение самостоятельно, это именно то, что я делаю, но ... представьте себе: есть два (или более) разработчиков, вы обнаружили ошибку, вы исправили ее в своей ветке Feature/1/теперь ваш друг, который работает над другой функцией (назовем его Feature/2 /), нашел ту же ошибку, а также исправил ее в своей ветке, поэтому мы получили две разные исправления для одной и той же проблемы и конфликт, когда они оба пытаются объединить свои ветви обратно в dev - я думаю, что метод 1 приемлем, когда вы работаете в одиночку, но метод 2 является обязательным, если вы работаете с командой. – user2384366