Repo múltiple de git remoto en el directory local con la misma estructura de directorys

Aprendo más y más sobre git cada día, por lo que se generan algunas preguntas de indagación. Tengo dos repositorys git remotos, cada uno con su propia estructura, excepto que ambos tienen un 'origen / dev'. Si pago usando lo siguiente en cada repository respectivo a mi local:

Proyecto 1:

git checkout -b dev origin/dev 

Proyecto2:

 git checkout -b dev origin/dev 

¿Puedo encontrarme en un escenario donde puedo tener files de Project1 y Project2 en el mismo directory local de 'dev'? ¿Cuál es la mejor manera de evitar esto?

¿Son estos diferentes proyectos en los dos repos? Entonces, siempre que use una carpeta diferente para cada proyecto en su máquina, entonces debería estar bien. Puede verificar esto yendo a cada carpeta en su máquina y escribiendo:

  git remote -v 

Siempre que la URL de origin coincida con el proyecto en el que se encuentra, está bien.

Si se trata de dos repositorys diferentes para el mismo proyecto, entonces no puede tener 2 mandos a distancia de origin . Puede tener un origin llamado remoto, pero el otro repository remoto debería llamarse de otra manera.

  origin/dev <other_remote>/dev 

Suponiendo que pueda tener dos nombres diferentes para los controles remotos, como lo señaló @triad, nunca se combinarían los files de ambas sucursales remotas sin hacerlo explícitamente.

Si desea combinarlos, tiene muchas opciones, dos de ellas serían:

 // Option 1 git checkout -b dev origin/dev git merge other_remote/dev // solve possible merge conflicts git push // this will push into origin/dev // Option 2 git checkout -b dev other_remote/dev git merge origin/dev // solve possible merge conflicts git push // this will push into other_remote/dev 

Es importante también darse count de que el uso

 git checkout -b dev origin/dev // or git checkout --track origin/dev 

… estás haciendo una twig remota dev local de la twig de desarrollo dev. Esto puede generar mucha confusión en su escenario si ejecuta git push o git pull sin mencionar explícitamente las twigs remotas que desea empujar o tirar.