Here is the problem: I have a lot of code, including artwork for the GUI I need to version in order to faithfully recreate a software product. I am also working on both Windows and Mac. The actual code I'm working on that will change on a daily basis is really small. However, all the related resources total to about a few GB before its built.
From my research online, it seems like either git-subtree or git-submodule is what I would need to use to keep my git repository fast.
I'm sure a lot of you git users out there faced a similar problem and have been confronted with the same decision.
Which approach have you used and what problems have you faced down the line?
A single monolithic git repository will work just fine. Large resources that don't change will only be copied once when you clone.
If you happen to have any large resources that change over time, you might find git-media useful.