Closed (fixed)
Project:
Eldir
Version:
6.x-2.0-alpha1
Component:
Code
Priority:
Normal
Category:
Task
Assigned:
Unassigned
Reporter:
Created:
5 Mar 2012 at 15:35 UTC
Updated:
22 Feb 2013 at 19:30 UTC
d.o packaging has improved pretty dramatically since these projects were merged into hostmaster. I can only assume that there's some Git magic to preserve the history of these components, and make back-porting fixes from 6.x-2.x to 6.x-1.x not too painful.
This is required in order for custom Profiler sub-profiles to work, which I've been able to confirm works based on the recent patches I've submitted. If we don't implement Profiler, it would still be *much* easier to maintain a fork of hostmaster, if it didn't bundle in all the rest of the front-end.
Comments
Comment #1
joestewart commentedsomething like:
git filter-branch --subdirectory-filter themes/elder HEAD -- --all
But I believe it would need tweaking to preserve the right release tags.
http://stackoverflow.com/questions/359424/detach-subdirectory-into-separ...
Comment #2
joestewart commentedAdding a couple more links:
http://drupal.org/node/1433406 - Migrating a subfolder from one project to another while keeping its full history (commits, tags, ...)
http://svendecabooter.be/blog/how-to-migrate-part-of-a-drupal-project-to...
Comment #3
ergonlogicI think using a subtrees merge strategy should make backporting fixes from Hosting 6.x-2.x back to Hostmaster 6.x-1.x pretty easy.
Comment #4
steven jones commentedAnarcat would there be any issues with doing this split in the 6.x-1.x release series? Guessing this would complicate the release procedure for hostmaster slightly, but we could script that right?
I think I'm in favour of splitting up as much as possible, as it's great from a developer perspective, but for end users just installing and using Aegir, we should direct them to the Community site and the hostmaster project. The hostmaster/provision split is already confusing for some, so we should just make the components visibly distinct, but tell people that they don't need to worry about that, and just file issues against hostmaster.
Comment #5
ergonlogicWe chatted about this a bit in #aegir.
Note also #1479280: Give Steven Jones commit access issue against Eldir.
Comment #6
anarcat commentedNote that I have done this before, and I could do the reverse again, no problem, so #1479280: Give Steven Jones commit access is not a blocker.
The reason for merging all this in the same project is that we were tired of creating all those release nodes, and this is still an issue. See #1050618: Publish release nodes with tag message from corresponding Git tag.
Also, the scripting right now doesn't cover tagging of the hostmaster module - maybe that could be changed, but that feels a bit flaky.
Comment #7
steven jones commentedShall we try to do this in 6.x-2.x?
Comment #8
anarcat commentedYes, let's. Here's the roadmap I see:
Note that the original problems we noted are still present and we'll need to be prepared to deal with the crap:
I'll try to deal with this shortly on the 2.x branch (only!!!). 1.x stays merged.
Comment #9
anarcat commentedSo for eldir, I did this:
Then I tried all sorts of rebase incantation to try to reconnect the old history with the new. I would always fail at some point.
The best I could do was with
git rebase -m -p --onto 2987445 dffd88e 6.x-2.xThen I would get conflicts on style.css, because the "great git migration" kicked in *after* we moved out of drupal.org (and coincidentally enough, we lost the old git repos of eldir). That can easily be solved. The other merge problem was a weird failed merge in 0574070a5ae41e2d3979f57b4d59a4207661475e. That can also be solved. But then cherry-pick itself explodes, probably a bug in rebase itself... Here's the whole transcript:
At that point, we're pretty much screwed. So I gave up (--abort, above). I have just pushed the disconnected branch directly, and to hell with it.
Comment #10
anarcat commentedOh and btw, if we want to reconnect the history, we may try a graft point but at this point... screw that. :)
Comment #11
anarcat commentedthis is now done. to quote the commit in hostmaster:
Comment #12
anarcat commentedComment #13
anarcat commented