Re: : Networking
From: Andrew Morton <hidden>
Date: 2016-06-15 22:41:54
Petr Baudis [off-list ref] wrote:
> d) To generate davem's tree (patch against linus's current tree (ie: patch > against 2.6.12-rc3+linus.patch)): > > git pull git-net > MERGE_BASE=$(merge-base $(cat .git/heads/origin ) $(cat .git/heads/git-net)) > git diff -r $MERGE_BASE:$(cat .git/heads/git-net) > ../25/patches/git-net.patch This is the bad way; I think this suffers of basically the same problems as my ancient merging by "forward-patching". You should probably do a regular merge: git pull git-net git merge git-net git diff -p The last command will show diff between current tree and the first parent; that amounts the merged patch in this case.
Bear in mind that there will be 20 or 30 different trees which I'll need the diffs for, not just the one git-net. I don't know if it'll be successful continually merging all those trees together. The way I did this with bk was to have a separate repo for each tree, but I don't think I'll want 30-40 separate git trees. My little methodology worked nicely for git-ia64. Jan Harkes has pointed out that the problem here is that Linus and Dave both applied the same patch from Al and that interdiff was able to fix it up: $ git diff -r 25ee7e3832951cf5896b194f6cd929a44863f419:b453257f057b834fdf9f4a6ad6133598b79bd982 > git-linus.patch $ git diff -r 25ee7e3832951cf5896b194f6cd929a44863f419:5523662c4cd585b892811d7bb3e25d9a787e19b3 > git-net.patch $ interdiff --no-revert-omitted -p1 git-linus.patch git-net.patch | diffstat drivers/net/tg3.c | 73 ++++++++++++++------------- net/ipv4/ip_output.c | 2 net/ipv4/netfilter/ip_conntrack_ftp.c | 4 - net/ipv4/netfilter/ip_conntrack_standalone.c | 7 -- net/ipv4/tcp_input.c | 1 net/sched/simple.c | 18 ------ 6 files changed, 46 insertions(+), 59 deletions(-) So hm. I guess git did what it was supposed to do here, and that a `git merge' would have removed the common patch. But if I take the approach of merging all those subsystem trees I do wonder if things will come unstuck...