Здравствуйте, iAlexander, Вы писали:
A>Можно ли на основании различий оригинального и модифицированного win-кода модифицировать linux-код аналогичным образом? A>Иными словами результат diff -c win/source.c.orig win/source.c > source.diff применить к файлу linux/source.c аля patch? A>Как можно было бы применять такой патч к другому файлу? — а основываясь лишь на контексте, ибо номера строчек, естественно, будут разниться для win- и linux- версий кода.
Собственно, diff и patch.
Можно попробовать взрослые варианты (трехсторонний мёрж), но для этого надо иметь "общего предка". Это исходный код до расхождения на ветки (т.е. до того, как в нем поигрались под линуксом и виндой).
Ковырять в сторону инструментов diff3, kdiff3.
diff3 даст тебе дифф-файл и в нем отметит конфликты — правим их руками и получаем готовый патч.
В kdiff3, если я правильно помню, можно сразу интерактивненько смержить.
A>У diff есть опция контекстной замены, однако в лоб воспользоваться не удалось: A>diff -c win/source.c.orig win/source.c > source.diff A>patch -c -o lin/source.c lin/source.c.orig source.diff A>Ошибки типа Hunk #80 FAILED at 3299...
Если нет общего предка — можно поиграться с sdiff (интерактивный мерж). Но с большим проектом придется поколупаться.