[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <f73f7ab80901131226s6af7730cucf9c44bc2b4f9545@mail.gmail.com>
Date: Tue, 13 Jan 2009 15:26:09 -0500
From: "Kyle Moffett" <kyle@...fetthome.net>
To: "Christian Borntraeger" <borntraeger@...ibm.com>
Cc: "Linus Torvalds" <torvalds@...ux-foundation.org>,
"Sam Ravnborg" <sam@...nborg.org>,
"Johannes Schindelin" <Johannes.Schindelin@....de>,
git@...r.kernel.org,
"Linux Kernel Mailing List" <linux-kernel@...r.kernel.org>
Subject: Re: current git kernel has strange problems during bisect
On Sun, Jan 11, 2009 at 4:39 PM, Christian Borntraeger
<borntraeger@...ibm.com> wrote:
> In my opinion we should really avoid subtree merges in the future as a curtesy
> to people who do the uncool work of testing, problem tracking and bisecting.
> </rant>
As an alternative, you can relatively easily rewrite the following
independent histories:
A -- B -- C
X -- Y -- Z
To look like this:
A -- B -- C -- X' -- Y' -- Z'
Where X' is (C + sub/dir/X), Y' is (C + sub/dir/Y), etc...
Assuming the following:
"master" branch points to commit C
"child" branch points to commit Z
"${KIDSTART}" is the SHA1 id of commit X
echo "${KIDSTART} $(git rev-parse --verify master)" >>.git/info/grafts
git filter-branch --index-filter 'git read-tree master && git
read-tree --prefix="sub/dir/" "${GIT_COMMIT}"' -- master..child
The one downside is then somebody actually has to *test* those commits
when doing a bisect, even though they did not materially change
anything. The upside is that there isn't any "what the hell just
happened?" when you *do* end up in the newly-created branch.
Cheers,
Kyle Moffett
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists