At my company we need to be able to manage access to different parts of source code. We've used separate git repos in the past, but then discovered Mercurial’s narrow extension, which supports sever side filtering. We all clone one repo, but get different subsets of the source, based on permissions. It’s pretty seamless, and works well. There are some limitations, like not being able to merge files outside your filter, but on balance things are easier to manage. I'm trying to see if the same can be done with Git. The latest version seems to have some ingredients, like sparse checkout, and blob filtering. They're both meant to address performance AFAIK, but perhaps can also be used as foundation for implementing permissions. I have some ideas on how this would work, and my company is willing to support the effort, but we'd like to coordinate it with git developers. There have been a number of attempts to implement a git monorepo over the years, I'm sure it would benefit a lot of people.