Here's the basic use case: I have a collection of qualitatively similar directories (actually multiple such collections - courses I teach, presentations I give, proposal I lead or contribute to, etc.). I also work across multiple different computers, with varying amounts of storage, some of which are always internet attached and some of which aren't. Finally, I employ multiple different git remotes (mostly github public and private repos, as well as my own servers).
For each individual project (proposal/presentation/class) I have components that I want to be strictly private for my own use only, components that I might want to share with a few others (collaborators/TAs/Reviewers) and components that I want to be publicly accessible by anyone. One concrete example: for most of my courses, I have a git repo hosted on one of my servers containing all of the lecture materials. I have another (private) github repo containing all of that course's homeworks and solutions