On Sun, Oct 30, 2011 at 12:07:25PM +0000, Dave Mitchell wrote:
> Karl, Father Chrysostomos, would it be okay if I reverted the following
> four commits for now? They overlap with the functions that I have currently
> been messing with extensively in my davem/re_eval branch (pp_regcomp and
> re_compile), and with them in place I'm finding it practically impossible
> to rebase my branch; i.e many commits in my branch would need to be
> manually merged.
>
> Some of what you've fixed has already been fixed in my branch (although
> not pushed yet), but I haven't looked closely yet to see if if there are
> still bits to fix.
>
> (Unless someone has a clever suggestion for something I can do with git
> instead...)
Assuming that commits F and G are "troublesome" because they conflict
I think that the "trick" would be, to take blead and your current branch:
A - B - C - D - E - F - G - H blead
\
a - b - c - d Dave
add commits reverting them in a new branch:
G' - F' Dave2
/
A - B - C - D - E - F - G - H blead
\
a - b - c - d Dave
Then rebase your real branch:
A - B - C - D - E - F - G - H blead
\
G' - F' Dave2
\
a - b - c - d Dave
then delete Dave2
A - B - C - D - E - F - G - H blead
\
G' - F' - a - b - c - d Dave
at which point you can continue to work in your branch, without changing
blead or reversing fixes, *until* you are finished (or finished enough to
merge). At which point you make one atomic commit that brings all of your
changes to blead, and everyone else never sees an intermediate version
where the changes were reverted.
I think this was roughly the approach Steffen took when merging in
Jim Keenan's work on ExtUtils::ParseXS, where it conflicted with changes
others had made in blead. He reverted the conflicting changes in his branch
first, then applied Jim's work from there.
Nicholas Clark
Thread Previous
|
Thread Next