Вытягивание только одной папки из одной ветви в другую ветку Git - PullRequest
0 голосов
/ 01 апреля 2020

У меня есть две ветви A и B, B был разветвлен от A

с тех пор были внесены различные изменения как в A, так и в B

Я хотел бы знать git команды для перемещения только одной папки из A в B без каких-либо изменений

1 Ответ

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

Как объединить изменения в один файл, а не объединить коммиты? - это в основном один и тот же вопрос, но многие ответы неверны.

Я исправил / улучшил некоторые из лучших решений.

  • Чтобы объединить изменения и получить коммиты (это приведет к дублированию коммитов, если вы позже объедините A и B, может быть избегать с перебазированием):
    git checkout B
    git format-patch --stdout ..A -- <path> | git am -3
    
  • Чтобы объединить изменения без фиксаций, используйте этот ответ (помните, что A и B поменялись местами) или это более простое решение:
    git checkout B
    git diff ...A -- <path> | git apply
    # stage changes and commit
    
  • Для перезаписи B версией файлов в A:
    git checkout B
    git checkout A -- <path>
    # commit
    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...