Emacs projectile with multiple repos (git/svn etc.) in one project

projectile-git-command uses git ls-files to list the files belonging to the project,
so I resolved the problem with the following code:

(setq projectile-git-command "git-ls-all-files")

git-ls-all-files is a shell script:

\#!/bin/zsh
files=`git ls-files -co --exclude-standard`
sb_files=`git --no-pager submodule --quiet foreach 'git ls-files --full-name -co --exclude-standard | sed s!^!$path/!'`
all_files=$files$sb_files

echo $all_files

I just had an equivalent problem, I fixed it by adding an empty .projectile file to my root directory, this tells projectile that that directory is the real project root and to search all the files in it's subdirectories when you want to find something.

See here for more info.