Thanks! In our case we have a branch off master for each component and we've developed there, merging from master from time to time (but never our local branch to master). I guess that puts us in the "multirepo with merges" category. We don't really care about maintaining the history of merges from master. Even rebasing our changes on the curent monorepo master would probably be fine (understanding that there will be merge conflicts we'll need to resolve).
The biggest challenge will be corrdinating changes to subprojects that depend on each other. We don't want to just rebase all changes from subproject X and then all changes from subproject Y, because we'll end up with unbuildable history for most of the resulting commits. In the foggy days of the past, I did our svn-to-git conversion and we had similar needs, merging multiple svn repositories into one git repository. I had to carefully craft scripts to get the commit ordering right. I could probably do the same much more easily with git. I've not used subtree merges in quite the way described so we'll have to experiment a bit and see what works. -David Justin Lebar <jle...@google.com> writes: >> It would be helpful to have instructions about the best way to move > local branches in those repositories to the monorepo and some scripts > to help with the transition. > > I put together https://reviews.llvm.org/D53414. > > On Mon, Oct 22, 2018 at 8:31 AM David Greene via llvm-dev > <llvm-...@lists.llvm.org> wrote: > > I had a short side-conversation at one of the roundtables about > existing > users of the subproject repositories. It would be helpful to have > instructions about the best way to move local branches in those > repositories to the monorepo and some scripts to help with the > transition. I know someone posted an example project a while ago > with > some scripts but my sense is that those scripts were particular to > that > project and maybe not generally applicable. > > Once the monorepo goes live (tomorrow?), what happens to the > existing > subproject mirrors? Do they get wiped away and replaced with > history > from the monorepo? Or are entirely new mirrors created? Or do they > just continue to mirror SVN until SVN becomes read-only? > > The first option would essentially be a rewrite of history for the > subproject repositories. We'll need to know if/when that is going > to > happen. > > -David > > Jonas Hahnfeld via Openmp-dev <openmp-...@lists.llvm.org> writes: > > > (+openmp-dev, they should know about this!) > > > > Recapping the "Concerns" > > (https://llvm.org/docs/Proposals/GitHubMove.html#id12) there is > a > > proposal of "single-subproject Git mirrors" for people who are > only > > contributing to standalone subprojects. I think this will be > easy in > > the transition period, we can just continue to move the current > > official git mirrors. Will this "service" be continued after > GitHub > > becomes the 'one source of truth'? I'd strongly vote for yes, > but I'm > > not sure how that's going to work on a technical level. > > > > Thanks, > > Jonas > > > > On 2018-10-20 03:14, Tom Stellard via llvm-dev wrote: > >> On 10/19/2018 05:47 PM, Tom Stellard via lldb-dev wrote: > >>> TLDR: Official monorepo repository will be published on > >>> Tuesday, Oct 23, 2018. After this date, you should modify > >>> your workflows to use the monorepo ASAP. Current workflows > >>> will be supported for at most 1 more year. > >>> > >>> Hi, > >>> > >>> We had 2 round-tables this week at the Developer Meeting to > >>> discuss the SVN to GitHub migration, and I wanted to update > >>> the rest of the community on what we discussed. > >>> > >>> The most important outcome from that meeting is that we > >>> now have a timeline for completing the transition which looks > >>> like this: > >>> > >> > >> Step 1: > >>> Tues Oct 23, 2018: > >>> > >>> The latest monorepo prototype[1] will be moved over to the > LLVM > >>> organization github project[2] and will begin mirroring the > current > >>> SVN repository. Commits will still be made to the SVN > repository > >>> just as they are today. > >>> > >>> All community members should begin migrating their workflows > that > >>> rely on SVN or the current git mirrors to use the new > monorepo. > >>> > >>> For CI jobs or internal mirrors pulling from SVN or > >>> http://llvm.org/git/*.git you should modify them to pull from > >>> the new monorepo and also to deal with the new repository > >>> layout. > >>> > >>> For Developers, you should begin using the new monorepo > >>> for your development and using the provided scripts[3] > >>> to commit your code. These scripts will allow to commit > >>> to SVN from the monorepo without using git-svn > >>> > >>> > >> > >> Sorry hit send before I was done. Here is the rest of the mail: > >> > >> Step 2: > >> > >> Around the time of next year's developer meeting (1 year at the > most), > >> we will turn off commit access to the SVN server and enable > commit > >> access to the monorepo. At this point the monorepo will become > the > >> 'one source of truth' for the project. Community members *must* > have > >> updated their workflows by this date and are encouraged to > begin > >> updating workflows ASAP. > >> > >> A lot of people asked at the developer meeting about the future > >> of bugzilla and phabricator and whether or not we will use > >> github issues and pull requests. These are important questions, > >> but are unrelated to the migration of the code. > >> > >> We also came up with a TODO list for things we want to > accomplish > >> as a community in the next year and beyond related to github. I > >> am working on putting these into bugzilla so we can track > progress > >> better and I will send a follow-up email about this. > >> > >> -Tom > >> > >>> > >>> > >>> > >>> > >>> [1] https://github.com/llvm-git-prototype/llvm>> [2] > https://github.com/llvm/>> [3] > >>> > https://llvm.org/docs/GettingStarted.html#for-developers-to-work-with- > a-git-monorepo>> > >>> > >>> _______________________________________________ > >>> lldb-dev mailing list > >>> lldb-dev@lists.llvm.org > >>> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev>> > >> > >> _______________________________________________ > >> LLVM Developers mailing list > >> llvm-...@lists.llvm.org > >> > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev____________ > ___________________________________ > > Openmp-dev mailing list > > openmp-...@lists.llvm.org > > http://lists.llvm.org/cgi-bin/mailman/listinfo/openmp-dev > _______________________________________________ > LLVM Developers mailing list > llvm-...@lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev _______________________________________________ lldb-dev mailing list lldb-dev@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev