[RFC] rerere to recreate topic branches
- From
Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
- Date
- Mar 10, 2009, 09:32 UTC
- Message-ID
- <20090310093200.GA12931@pengutronix.de>
Hello,
Ingo sent a similar mail some time ago[1], that's why I Cc: him.
For TopGit I want something similar as Ingo for -tip (I think): recreate a branch with a cleaned up history but without throwing away merge resolutions.
I think most points from Ingo's mail are already addressed. Let's see if my mail is equally successful :-)
One step that wasn't in Ingo's list, but I consider nice is the following workflow:
export GIT_RR_CACHE=$(mktemp -d) git rerere add-to-cache-from origin..$branch_to_rebuild script doing the actual rebuild
together with rerere.autocommit=true. Even though rerere is not save in general, this workflow seems fine. I think with this approach sharing the rr-cache isn't an issue anymore and merge conflicts that need manual work should be quite rare, even if you do it for the first time.
I just found contrib/rerere-train.sh, which already addresses a part of my plan.
One of my further goals is to do as much transformation without touching the working copy (to gain speed and comfort). For that I would need git merge to operate on an index, only and only fall back to using the working copy if manual intervention is needed.
I have to admit that up to now I didn't look into the corresponding code, so consider this mail (only) as starter to collect ideas and comments.
Best regards Uwe
[1] http://thread.gmane.org/gmane.comp.version-control.git/85176/
-- Pengutronix e.K. | Uwe Kleine-König | Industrial Linux Solutions | http://www.pengutronix.de/ |