On Sat, 18 Oct 2008 00:55:53 +0400, Dmitry V. Levin wrote: > > Допустим, есть бранч с исходниками (source), пофайлово побитый > > ещё на несколько (branch1 и branch2). > > > > source > > `- branch1 > > `- branch2 > > > > Я хочу вносить изменения в source, не заботясь о том, в каком > > из бранчей находится конкретный файл, а вместо этого формируя > > diff между исходным бранчем branch{1,2} и пропатченными исходниками. > > > > source > > |`- patched > > `- branch1 > > `- branch2 > > > > .gear-rules: > > diff: branch1:. patched:. name=1.patch > > diff: branch2:. patched:. name=2.patch > > > > Но при этом в 1.patch помимо изменённых попадут файлы, > > отсутстствовавшие в branch1, а в 2.patch - в branch2. > > (Допустим пока, что я сам не кладу новых файлов в patched.) > > Если branch1 и branch2 пересекаются по файлам, то это не будет работать. > А если branch1 и branch2 не пересекаются по каталогам, По файлам не пересекаются, а по каталогам пересекаются (как я это понимаю): texmf-dist/tex/generic/texdraw/* - в одном бранче texmf-dist/tex/generic/qpxqtx/* - в другом > то проще написать > > diff: branch1:dir1 patched:dir1 name=1.patch > diff: branch2:dir2 patched:dir2 name=2.patch Наверное, если изменений было немного, их можно все перечислить =) diff: branch1:texmf-dist/tex/generic/texdraw patched:texmf-dist/tex/generic/texdraw name=texdraw.patch Однако, однажды их может стать много.