Genel bir havuzdaki değişiklikleri özel bir yapıyla birleştirme

Aug 19 2020

OSSSürüm 1.0'da bir sınıf içeren bir depoyu klonladığımı varsayalım A. Sınıflara ABen kopyalamak böylece, benim için yeterli değildir Aiçin A've ona bazı değişiklikler yapmak. Daha sonraki bir zamanda, güncellenmiş bir sürümünü içeren OSSsürümde klonladım . Nasıl gelen değişiklikler / güncellemeler birleştirebilirsiniz benim değiştirilmiş kopyasına ? Bu tür durumlar için standart bir model var mı?1.1AAA'

Yanıtlar

6 VonC Aug 21 2020 at 22:21

Fikir şudur:

  • yamayı kullanarak oluşturun git diff: A # 1.0 ile 1 # 1.0 arasında

    git diff 1.0 1.1 -- A > a.patch
    
  • daha sonra patchyardımcı programı kullanarak bu yamayı uygulayın : diff'i uygulamak istediğiniz dosyayı belirtebilirsiniz patch.

    patch -p1 A' a.patch
    

Windows'ta, buradaki gibi basitleştirilmiş bir PATH kullanın ve yamanın mevcut olduğunu göreceksiniz:

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