Git submodules and Mercurial subrepos provide a mechanism to easily include shared code and libraries in your repository with a minimum of fuss.
When Deploy launched it included support for Git submodules from the outset, with Mercurial subrepos being added some time later, however it was not very smart about detecting changes in these submodules. Whenever a change was made in the submodule the entire submodule would need to be re-uploaded. Needless to say, for large submodules this was a serious inconvenience.
Today we're pushing an update which makes the handling of submodules much, much better. From now on, only the changes in a submodule will be uploaded allowing for much faster deployments. We've modified the preview page to make it clear what changes are going to be uploaded in each submodule.