Слияние изменений из публичного репозитория в частную сборку

Aug 19 2020

Предположим, я клонировал репозиторий OSSверсии 1.0, содержащий класс A. AДля меня подкласса недостаточно, поэтому я копирую Aего A'и вношу в него некоторые модификации. Позже я клонирую OSSверсию 1.1, содержащую обновленную версию A. Как я могу объединить изменения / обновления с Aмоей измененной копией A'? Есть ли стандартный образец для таких случаев?

Ответы

6 VonC Aug 21 2020 at 22:21

Идея заключается в следующем:

  • создайте патч, используя git diff: между A # 1.0 и 1 # 1.0

    git diff 1.0 1.1 -- A > a.patch
    
  • затем примените этот патч с помощью patchутилиты: вы можете указать файл, к которому вы хотите применить разницу patch.

    patch -p1 A' a.patch
    

В Windows используйте упрощенный PATH, как здесь , и вы увидите доступный патч:

C:\git\>where patch
C:\prgs\gits\current\usr\bin\patch.exe