On Friday 30 September 2016 19:38:19 Shurmer, Jordan wrote: > Hello, > > This seems like just the thing that Git Submodules may be useful for: > https://git-scm.com/book/en/v2/Git-Tools-Submodules > > IF each sling module is its own repo there could conceivably still be one > parent repo of some kind, which has a submodule for each other repo. > Hope that helps the discussion!
Jordan, please follow my provided links and have a look. Regards, O. > Thanks, > Jordan Shurmer > > -----Original Message----- > From: ianbos...@gmail.com [mailto:ianbos...@gmail.com] On Behalf Of Ian > Boston Sent: Thursday, September 29, 2016 5:52 AM > To: dev@sling.apache.org > Subject: Re: moving sling to git > > Hi, > > > On 29 September 2016 at 10:06, Oliver Lietz <apa...@oliverlietz.de> wrote: > > > > On Thursday 29 September 2016 09:27:30 Ian Boston wrote: > > > > > Hi, > > > I fully support moving to Git. > > > > > > > > > > > > I think it would be a mistake to attempt to split the repository > > > into > > > > 100s > > > > > of separate Git repositories as it will make it near impossible for > > > any outsider to work on the code base. I say that from a position of > > > experiencing exactly the same style of re-organisation on a large > > > code > > > > base > > > > > with a similar number of modules. Finding the root cause of a > > > problem > > > > takes > > > > > an order of magnitude more time, and if a pull request has to be > > > applied > > > > to > > > > > several repositories at the same time, good luck. IIUC those that > > > work on all of the code base on a daily basis, have no problem. > > > > > > > > > > > > Quite apart from the infra issues. > > > > > > > > > > > > Do it with 1 repo, under the ASF banner, not in a independent GitHub > > > organisation. > > > > > > > > > > > > It sounds like this was a long and complex offline discussion. > > > > > > > > Quoting Stefan: "we discussed again the long-debate topic moving from > > svn to git." > > > > > > > > > I do hope a > > > decisions of this magnitude was not made, at that time, excluding > > > those members of the community, committers, PMC and ASF Members who > > > were not > > > > able > > > > > to attend the adaptTo conference. > > > > > > > > https://issues.apache.org/jira/browse/SLING-3987 > > https://cwiki.apache.org/confluence/display/SLING/Move+ > > from+Subversion+to+Git > > > > > Thank you for the pointers > > I had searched the archives with [1] but only found [2], hence my concern > that Sling had reverted to offline decision making, given the activity > landing in my inbox from adaptTo. > My concern was unfounded. There has been discussion online and the decision > has been made. I missed it all due to other commitments. > Ignore my comments on the detail. > > Best Regards > Ian > > 1 > http://markmail.org/search/?q=sling-dev+list%3Aorg.apache.incubator.sling-de > v+github+-from%3A%22jira%40apache.org%22+-from%3A%22*%40git.apache.org%22#qu > ery:sling-dev%20list%3Aorg.apache.incubator.sling-dev%20github%20-from%3Ajir > a%40apache.org%20-from%3A*%40git.apache.org%20order%3Adate-backward+page:1+s > tate:facets 2 http://markmail.org/thread/u32gblzpjairkc3a > > > > > > > > > > > Regards, > > O. > > > > > > > > > Best Regards > > > Ian > > > > > > > > > > > > On 28 September 2016 at 23:34, Stefan Seifert > > > <sseif...@pro-vision.de> > > > > > > > > > > > > wrote: > > > > > > > discussed at the Sling Committer Round Table @ adaptTo() 2016 > > > > > > > > > > > > > > > > we discussed again the long-debate topic moving from svn to git. > > > > no commiter hat and objection that moving to git creates a real > > > > problem. > > > > all > > > > > > agreed it would be nice to move to git. > > > > > > > > > > > > > > > > aspects that where discussed: > > > > > > > > > > > > > > > > - every module should get it's own git project > > > > > > > > > > > > > > > > - including special cases where a module is only a integration > > > > > > > > test > > > > > > > > > > > > > > > > project > > > > > > > > > > > > > > > > - this ensures thare is only one "releaseable" artefact per git > > > > > > > > > > > > > > > > repository > > > > > > > > > > > > > > > > - and git branching/tagging works as expected > > > > - most sling modules are quite independent anyway > > > > > > > > > > > > > > > > - we need a replacement for the reactor poms > > > > > > > > > > > > > > > > - to build groups of related projects, e.g. sling distribution, > > > > > > > > sling > > > > > > > > > > > > > > > > models, testing mocks etc. > > > > > > > > > > > > > > > > - and to build all sling sources together > > > > - goal is to have an additional git project for each reactor > > > > > > > > > > > > > > > > pom/suitable grouping of git projects > > > > > > > > > > > > > > > > - as multi repo tooling support e.g. google repo [1] or gitslave > > > > > > > > [2] > > > > > > > > > > > > > > > > could be used > > > > > > > > > > > > > > > > - which solution is chosen is not important for the first step > > > > > > > > and > > > > the > > > > > > > > > > > > > > initial migration - we can solve this late, it's mainly for > > > > convenience > > > > > > > > > > > > > > > > - this apporach results in a HUGE number of git repos - perhaps > > > > 300-350 including reactor poms > > > > > > > > > > > > > > > > - because sling is so modular, and has so many bundles already > > > > > > > > > > > > > > > > - in the apache github mirror there is only one organization "apache" > > > > > > > > > > > > > > > > - all 350 sling projects would be part of this main > > > > > > > > organization, > > > > > > > > > > > > > > > > together with all other apache git projects that are already > > > > listed > > > > there > > > > > > > > > > > > > > - other projects like commons, cordova, couchdb are examples > > > > > > > > haven > > > > > > > > > > > > > > > > already a lot of individual git repos > > > > > > > > > > > > > > > > - asf currently does not allow apache projects to create their > > > > > > > > own > > > > > > > > > > > > > > > > github organizsation, mainly due to infra restrictions > > > > > > > > > > > > > > > > - name pattern for the git repository should be something like > > > > "sling-<artifactId>" > > > > > > > > > > > > > > > > - we drop the folder grouping from svn today in "extensions", > > > > > > > > > > > > > > > > "servlets", "commons" etc. only the hierarchy of artifactId is > > > > relevant. > > > > > > > > > > > > > > - with the prefix "sling-" they > > > > - question: how are "contrib" and "samples" repos marked? by > > > > > > > > another > > > > > > > > > > > > > > > > prefix like "sling-contrib-" and "sling-samples"? > > > > > > > > > > > > > > > > - no "self-service" for creating git repos > > > > > > > > > > > > > > > > - a big problem ist hat asf infra currently does not provide a > > > > > > > > > > > > > > > > "self-service" for creating new asf git projects > > > > > > > > > > > > > > > > - whenever a new sling module is created a ticket a INFRA is > > > > > > > > needed > > > > to > > > > > > > > > > > > > > create it, process is blocked until the involved manual steps are > > > > completed > > > > > > > > > > > > > > > > - perhaps we can talk to infra providing a better solution here, > > > > > > > > > > > > > > > > pointing at the 350 git repos we already need only for the start > > > > > > > > > > > > > > > > - if this is not solved just creating a new project/module is > > > > > > > > more > > > > > > > > > > > > > > > > complicated than required > > > > > > > > > > > > > > > > - only one git repo for contrib and samples? > > > > > > > > > > > > > > > > - we briefly discussed to use only one big repo for contrib and > > > > samples > > > > > > > > > > > > > > as a workaround fort the "no self-service" problem, it would then > > > > be > > > > easy > > > > > > to create new modules at least there > > > > > > > > > > > > > > > > - but this is perhaps not a good solution, because it again > > > > > > > > creates > > > > all > > > > > > > > > > > > > > problems that arise when multiple releasible artifacts are put > > > > together in > > > > > > one git repo > > > > > > > > > > > > > > > > - and it would make it harder to move something from contrib to > > > > > > > > "full > > > > > > > > > > > > > > > > supported" > > > > > > > > > > > > > > > > - committer whiteboards > > > > > > > > > > > > > > > > - we also need a solution for the comitter whiteboards > > > > - they should be cleaned up before migration leaving only what > > > > > > > > is > > > > still > > > > > > > > > > > > > > relevant > > > > > > > > > > > > > > > > - migration process > > > > > > > > > > > > > > > > - the migration process has to be fully scripted, and tested > > > > > > > > several > > > > > > > > > > > > > > > > time in a "lab environment" > > > > > > > > > > > > > > > > - we should avoid migration approached that need restructuring > > > > > > > > the > > > > svn > > > > > > > > > > > > > > hierarchy before migration (e.g. "flat list of all modules"), > > > > because > > > > this > > > > > > make impact the migration of svn history to the individual git > > > > repos > > > > > > > > > > > > > > > > - we may need to write our own migration script handling the > > > > specifics > > > > > > > > > > > > > > of the current svn folder structure and creating the full list of > > > > individual git repos locally from it (first migrate to a single > > > > git > > > > repo > > > > > > and then splitting it up preserving history for each modules folder). > > > > those > > > > local created git repos can then be pushed to the individual asf > > > > git repos. > > > > > > > > > > > > > > > > - contact infra > > > > > > > > > > > > > > > > - before we take further steps we should ask infra for it's opinion > > > > - e.g. by creating a jira ticket and describing the planned > > > > > > > > steps, > > > > and > > > > > > > > > > > > > > that this would result in a huge number of repos > > > > > > > > > > > > > > > > stefan > > > > > > > > > > > > > > > > [1] https://code.google.com/p/git-repo/ > > > > [2] http://gitslave.sourceforge.net/ > > > > > >