De acuerdo a esta pregunta en stackoverflow, existen 2 formas principales de lograr esto. Una es utilizando submodules y la otra haciendo un «subtree merge». La primera es para proyectos realacionados pero que siguen un desarrollo independiente el uno del otro. Y el segundo, que es el que vamos a utilizar, es para integrar el código de un proyecto dentro de otro.
Pues lo primero es agregar como remoto el proyecto que queremos agregar
git remote add -f panda git://github.com/TekNoLogic/Panda.git
después hacemos el subtree merge de la siguiente forma
git merge -s ours --no-commit panda/master
git read-tree --prefix=panda/ -u panda/master
git commit -m "Subtree merged in panda"
Si el código que quieres integrar esta en una subcarpeta puedes hacer lo siguiente
git read-tree --prefix=cork2/submodule -u cork/master:src/main/submodule
git commit -m "Subtree merged in cork2/modules"
Fuentes:
https://help.github.com/articles/working-with-subtree-merge
http://nuclearsquid.com/writings/subtree-merging-and-you/
http://stackoverflow.com/a/1426163/961652