На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
  
> Ошибочная ветка для commit , Git
    Возникла такая ситуация. По ошибке зафиксировал изменение не в той ветке, а заметил лишь месяц спустя.
    Есть ветка А - основная и её производная, Б. По ошибке зафиксировал именно в А.

    Правильно ли сделать патч, производящий откат на главной ветке А, чтобы потом добавлять ту фиксацию (commit) на нужной ветке Б? Ведь были произведены действия над А и Б и их нельзя терять.

    Прикрепил картинку.



    Добавлено
    По иллюстрации показано, что фиксацию нужно было произвести в синей точке вместо красной.

    Прикреплённая картинка
    Прикреплённая картинка
    Сообщение отредактировано: Romtek -
      Если ветки сливать не планируется, то ошибку стоит пофиксить именно на ветке, а патч это будет или ручное исправление, то разницы то особой нет...
      возможно до выхода новой версии Б это будет патч....
        Цитата ElcnU @
        возможно до выхода новой версии Б это будет патч....

        Применив патч, я изменю файлы. Что повлияет на фиксацию в Git. Я что-то недопонял.

        Цитата ElcnU @
        Если ветки сливать не планируется

        Дело в том, что как раз и планируется. Ветка А - главная для разработки, Б - доработка одной частной задачи (удачный эксперимент). В свою очередь, ещё существует ветка стабильной версии (кажется это не влияет на постановку вопроса).
        Ветка Б часто синхронизируется с А. Когда на Б задача будет полностью решена, она будет влита обратно в А. Причём, на ветке А изменения производятся независимо от Б.

        Как тогда быть? Ведь, применив патч, удаляющий несвоевременное изменение (которое впоследствие таки будет применено), я могу нарушить все изменения, которые касаются как кода, так и БД.
          Решил вопрос следующим образом:
          1. откат ошибочных изменений на А
          2. слияние с веткой А в ветку Б (теперь изменения в сиде на обеих ветках)
          3. добавление в ветке Б необходимых фиксаций с помощью git-cherry-pick
          0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
          0 пользователей:


          Рейтинг@Mail.ru
          [ Script execution time: 0,0510 ]   [ 18 queries used ]   [ Generated: 28.04.24, 03:20 GMT ]