On Sat, Oct 18, 2008 at 12:45:24AM +0400, Grigory Batalov 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 не пересекаются по каталогам, то проще написать diff: branch1:dir1 patched:dir1 name=1.patch diff: branch2:dir2 patched:dir2 name=2.patch -- ldv