7.1 Git - Слияние - "Истинное" слияние и разрешение конфликтов в git merge

Поделиться
HTML-код
  • Опубликовано: 21 дек 2024

Комментарии • 36

  • @JavaScriptru-videos
    @JavaScriptru-videos  3 года назад +4

    Ссылки:
    - Git курс (playlist): ruclips.net/video/W4hoc24K93E/видео.html
    - Git разное (playlist): ruclips.net/video/8HxTHPkdedA/видео.html
    - Учебник и курсы по JavaScript и смежных технологиям: learn.javascript.ru

  • @liliyasiadzelnikava96
    @liliyasiadzelnikava96 3 года назад +15

    очень достойно: визуальное объяснение тащит

  • @АхмадАхмедов-у4ф
    @АхмадАхмедов-у4ф 3 года назад +8

    Спасибо тебе огромное! Это лучший курс по git

  • @Ecto-Gamet
    @Ecto-Gamet 3 года назад +13

    Спасибо! Узнал для себя очень много нового, хотя в своих проектах использую git уже несколько лет. Пожалуй, лучший курс по git!

    • @vasyapupkin997
      @vasyapupkin997 2 года назад

      шизоид одно и то же под каждым видео спамит

  • @ДмитрийПавлов-ь8ф
    @ДмитрийПавлов-ь8ф 3 месяца назад

    Спасибо за такие крутоые ролики! Но не удержался написать когда чуть со стула не упал на том моменте когда ты сказал continue как контина. Реально я аж выпал...

  • @Леонид-с5з
    @Леонид-с5з 2 года назад +4

    1:22 Истинное слияние
    2:28 Git merge-base [название веток через пробел] - чтобы увидеть последнего общего предка заданных веток
    2:38 сравнение трех версий файлов (base + ours + theirs) -> merge
    3:25 Прерванное слияние (конфликт)
    4:51 общее правило слияния, если конфликта нет (в одном файле были изменения, а в другом нет)
    5:28 если есть конфликт (изменения были в обоих файлах)
    6:36 одни и те же строки файла в разных ветках изменены по разному
    6:46 какие-то изменения удалось объединить, а какие-то нет
    6:58 Флаг -U, чтобы укоротить вывод - указывает максимальное число строк в контексте (вокруг изменений). По умолчанию - 3
    8:03 отображение конфликта в редакторе
    8:55 git checkout --ours [путь к файлу] - оставляет вариант и текущей ветки
    9:07 git checkout --theirs [путь к файлу] - оставляет вариант и другой ветки
    9:19 git checkout --merge [путь к файлу] - снова отобразит версию с маркерами конфликта
    9:30 вернуть все как было:
    9:36 через git reset --hard
    9:48 через git reset --merge (более аккуратный возврат)
    9:59 наглядный пример 10:37
    11:18 git merge --abort (аналог git reset --merge)
    11:42 git checkout --conflict=diff3 --merge [файл] (выводит также информацию из последнего общего для веток коммита серым цветом)
    12:25 установить такой способ представления глобально по умолчанию (git config --global merge.conflictStyle diff3)
    12:53 причина, по которой git "не видит" изменений после устранения лишних строк вручную. Чтобы "увидел" нужно добавить в индекс.
    13:03 информация в индексе при конфликте сразу о трех версиях файла. 13:12 показ в трех колонках. git show :[номер стадии]:[файл]
    13:52 git merge --continue - псевдоним комманды git commit (для красоты). 14:13 в редакторе

  • @nmdsoft
    @nmdsoft 3 года назад +2

    без воды и много доп. информации. спасибо!

  • @georgros4199
    @georgros4199 2 года назад +2

    Большое спасибо за разбор.

  • @leshalozhkin
    @leshalozhkin 2 года назад +2

    Спасибо. Очень толково объяснено

  • @matkunzamoste9403
    @matkunzamoste9403 3 года назад +1

    Лучший курс по гит!!!

  • @andreipalii1220
    @andreipalii1220 2 года назад +4

    10:37 - так ведь и слияние ветки в данном случае не получится, ведь Гит предупредит сказав что локальные изменения (рабочая директория + индекс) будут *перезаписаны* слиянием, предложив сперва добавить изменения в стэш либо закоммитить их.
    М-да, первый урок когда что-то не могу понять. Подскажите где я упускаю что-то или где я не прав.

  • @mirakmalsultanov3398
    @mirakmalsultanov3398 2 года назад +1

    лучшее объяснение которое нашел

  • @wardxela
    @wardxela 9 месяцев назад

    Спасибо большое, очень полезная информация

  • @andreipalii1220
    @andreipalii1220 2 года назад +2

    1:52 - тут не понятно... почему git diff говорит о том что нет незакомиченных изменений в выведенных файлах? разве если передать diff-у две ветки (как в видео), он не сравнит *лишь закомиченные* изменения на которые указывает HEAD обеих веток?
    diff ведь показывает наличие изменений в рабочей директории при командах на подобе git diff или git diff HEAD, а тут нежданчик - команда git diff --name-only master fearure говорит что "незакоммиченных изменений в выведенных файлах нет"...
    Что я упускаю? Хэлп))

  • @viktoryakovenko299
    @viktoryakovenko299 3 года назад +4

    Когда у меня возникают проблемы с гитом, я бегу к Илье!

  • @alexanonymous5823
    @alexanonymous5823 2 года назад +2

    большое спасибо

  • @AmirKadenov
    @AmirKadenov 2 года назад +2

    Благодарю

  • @michal2007
    @michal2007 3 года назад +3

    $git merge-base master feature
    2:19 > SHA-commit
    $git merge master feature
    3:25 > Conflict (ours theirs) ?!
    $git merge --abort
    9:30 > Abort merge
    $git show :0:index.html
    12:38 > Show preparing merge

  • @p.polunin
    @p.polunin 2 года назад +1

    Пять баллов!

  • @chelloveck
    @chelloveck 2 года назад +2

    Спасибо

  • @АлисаФортунова
    @АлисаФортунова Год назад

    Спасибо за урок

  • @Kotsik
    @Kotsik 2 года назад +2

    А как закрыть редактор, если он открывается в консоли?

    • @vasyapupkin997
      @vasyapupkin997 2 года назад

      если редактор nano, то ctrl+X

  • @olgavasileva2521
    @olgavasileva2521 2 года назад +1

    👍👍👍

  • @Макс523
    @Макс523 2 года назад +2

    OK!

  • @energetic1bee
    @energetic1bee 3 месяца назад

    пора открывать шампанское!

  • @sander1614
    @sander1614 Год назад +2

    Ветки не обои, а обе. Обои на стене.

  • @timurkash
    @timurkash 3 года назад +1

    фичер... прикольно... фича, депача, литреча, фьюча и т.д.

  • @xeleos
    @xeleos 3 года назад +2

    Гит слияние - это тебе не «трах-бах и всё готово». Это тебе не «собрались и разбежались». Тут всё гораздо глубже! А то, что вы тут устроили, не имеет ничего общего с истинным слиянием! Тупой выпендреж.
    (Камина)

    • @mrtwon8638
      @mrtwon8638 3 года назад +4

      Ну расскажи тогда что есть слияние в истинной форме )

    • @fmacbeth8523
      @fmacbeth8523 2 года назад +2

      @@mrtwon8638 Настоящее мужское безграничное слияние Гуррен Лаггана конечно еж)

    • @feewre
      @feewre 2 года назад

      Магма течёт в наших жилах, раскаляя сердца!

  • @ДмитрийСергеев-л6г
    @ДмитрийСергеев-л6г 5 месяцев назад

    Спасибо!!!

  • @alexb.2616
    @alexb.2616 2 года назад +1

    спасибо

  • @supotnitskiy
    @supotnitskiy 5 месяцев назад

    спасибо