

I use plain git when a project wants to use some tool that itself calls git commands that modify the repo state. You can use a colocated repo in this case (where jj and git commands both work) and nothing will break, but it can mess up your graph, creating duplicate commits which you then have to fix. I’ve seen this with Gentoo’s pkgdev for example.
Git blame and some other graph operations are also just faster right now which is why I sometimes use them in large repos over jj’s equivalent.
Oh my god this is amazing. Thanks for this.
I would assume a merge conflict if the submodules were changed in both branches from the base… but it’s probably not that simple, is it? I’ve never tested it.