[llvm-dev] MLIR landing in the monorepo

David Greene via llvm-dev llvm-dev at lists.llvm.org
Mon Nov 18 08:30:01 PST 2019

James Y Knight via llvm-dev <llvm-dev at lists.llvm.org> writes:

> However, another issue is that subtree merges have really weird artifacts
> when trying to look through history, with e.g. git log <filename>. I think
> I'd really prefer to avoid utilizing a subtree-merge for this.

I agree.  Subtree-merges are really strange when walking back through
history.  If someone checks out an early commit from mlir, all they will
see in their working directory is the mlir sources.  All other
components will have disappeared.

I you want to maintain history, you can look at the scripts James, I and
others worked on for the LLVM git migration:


In particular, have a look at this pull request:


This provides a tool to graft an existing git repository into a
subdirectory of the monorepo.  It has the option of rewriting commits so
that checkouts of those commits will maintain the other subprojects
alongside.  That functionality isn't well tested but I'd be happy to
work on it some more if needed.

I think this could work well for MLIR.


More information about the llvm-dev mailing list