Mercurial Repo con una subcarpeta procedente de svn repo – posible?

Hay varias preguntas similares, pero no pude encontrar ninguna lo suficientemente cerca como para evitar una nueva pregunta.

Tenemos una solución mercurial vs2010 controlada que comprende más de 40 proyectos.
También contamos con un contratista que trabaja de forma remota en una parte de uno de los proyectos, un Labview FPGA + RT + DotNetAssembly.

Idealmente quisiera poner su código en "ContractorsSVNRepo" (ver a continuación) de nuestro repository Mercurial, y cuando quiero una actualización, descargo su svn repo, si estoy contento con él, me comprometo con nuestro repository mercurial.

Tengo acceso a su svn repo para su parte del proyecto, sin embargo, él no tiene acceso a nuestro repository Mercurial por razones de security / IP. Y como no estoy tan familiarizado con mercurial, ni siquiera sé si es posible darle acceso solo a una sola carpeta de un repos, así que esto es lo que se me ocurrió.

esto funcionara? ¿Se puede hacer? ¿Acabo de crear un repository svn en la carpeta de destino, lo descargo y luego solo agrego los files que quiero en mercurial a nuestro repository? ¿Los dos sistemas de scc se unirán y jugarán bien juntos? Simplemente lo probaría y vería qué sucede, pero aún no estoy familiarizado con mercurial y no quiero arriesgarme a arruinar nuestro repository mercurial y no ser capaz de recuperarlo rápidamente.

OurAppsMercurialRepo Proj1 Proj2 Proj3 Proj3Folder1 Proj3Folder2 Proj3Folder3 ContractorsSVNRepo ... Proj40 

Editar 1:
No creo que haya hecho esto bien, ya que al tirar cambios de otra máquina solo saca el file .hgsub, no tira del svn repo (o por lo que puedo decir, incluso lo bash como no se me ha pedido ni agregado ningún detalle de inicio de session) )

Hice esto en mi máquina:
HG init ContractorsSVNRepo
Creado .hgsub con "ContractorsSVNRepo = [svn] https://ContractorsRepo.com/svn/trunk" en él
HG agrega .hgsub
svn co https://ContractorsRepo.com/svn/trunk ContractorsSVNRepo
Estado de HG
HG commit -m "Subrepositorys agregados"

Sin embargo, cuando presiono en otra máquina todo lo que hace, extrae el file .hgsub. los documentos vinculados sugieren que si se hace un pull en el repository principal, se obtendrán ambos repos, ¿pero solo se tira del mercurial? ¿Me falta algo de estos pasos?

Edit2:

Dentro de OurAppsMercurialRepo:
svn co http://svn.contractor.com/svn/proj4other/trunk Proj3 / ContractorsSVNRepo

Coloque el siguiente file .hgsub dentro de OurAppsMercurialRepo:
Proj3 / ContractorsSVNRepo = [svn] http://svn.contractor.com/svn/proj4other/trunk

A partir de ahora, cuando confirme OurAppsMercurialRepo, la revisión de la verificación de subversión en el momento de la confirmación se almacena en mercurial

Gracias por la respuesta, sin embargo, esto no cambió nada, todavía no descarga / actualiza el origen de svn al extraer el repository principal y ahora aparece un error con mi nombre de ruta
"Anular: ruta contiene componente ilegal:".
Sospecho que esto se debe a que nuestros nombres de ruta tienen " . " En ellos, así que me voy a dar por vencido y crear un repository svn separado y copyr los files que quiero en mercurial manualmente. no fallará, no causará dolor de cabeza a otros desarrolladores y no pierdo más time en esto.

Si posiblemente. Ver Subrepos mercurial -> https://www.mercurial-scm.org/wiki/Subrepository

Dentro de OurAppsMercurialRepo :

 svn co http://svn.contractor.com/svn/proj4other/trunk Proj3/ContractorsSVNRepo 

Coloque el siguiente file OurAppsMercurialRepo dentro de OurAppsMercurialRepo :

 Proj3/ContractorsSVNRepo = [svn]http://svn.contractor.com/svn/proj4other/trunk 

A partir de ahora, cuando OurAppsMercurialRepo , la revisión del pago de subversión en el momento de la confirmación se almacena en mercurial. Por ejemplo, su ContractorsSVNRepo usado localmente no está obligado a ser el último.

Si teme que eliminen el repository de subversión después de un time, primero puede hacer una tarea cron / schedule que tire-> convierta el repository svn cada noche / hora / 5 minutos. El punto mágico aquí es HgSubversion que puede convertir un repository de Subversion en uno voluble y mantener el mapeo entremedio. Luego usa el repository mercurial como subrepo como se indica arriba:

Después de instalar HgSubversion, convierta el repository de subversión a uno mercurial:

 hg clone -U http://svn.contractor.com/svn/proj4other proj4otherconverted 

(Eliminé la parte del trunk al final ya que HgSubversión también puede convertir twigs y tags)

Luego programe este command dentro del directory proj4otherconverted :

 hg pull 

Dentro de OurAppsMercurialRepo haga el directory Proj3 luego:

 hg clone http://hg.yourcompany.com/hg/proj4otherconverted Proj3/ContractorsSVNRepo 

Coloque el siguiente file OurAppsMercurialRepo dentro de OurAppsMercurialRepo :

 Proj3/ContractorsSVNRepo = http://hg.yourcompany.com/hg/proj4otherconverted