¿Cómo fusionas un código sin seguimiento con una base de código rastreada?

Tengo que lidiar con dos bases de código, llamémoslas Base_A y Base_B para el mismo proyecto donde Base_B es una copy directa de Base_A. Ambas bases de código se desarrollarán activamente. Periódicamente recibiré una copy de Base_A y deseo fusionar sus cambios con Base_B (que será controlado por la versión).

Sin embargo, Base_A no tiene ningún control de versión, y por diversas razones no puedo ponerlo bajo control de versión. Entiendo el problema con esto, pero está fuera de mi control.

¿Es posible fusionar cambios periódicos y actualizaciones de Base_A en Base_B? No importa si uso Git o SVN.

Sin embargo, Base_A no tiene ningún control de versión, y por diversas razones no puedo ponerlo bajo control de versión. Entiendo el problema con esto, pero está fuera de mi control.

El patrón que está buscando aquí es una "twig de proveedor". Ahí es donde tienes código de terceros, como lanzamientos de software de terceros. Usted crea una sucursal para rastrear sus lanzamientos para que pueda fusionarlos en su código.

Establezca una twig como vendor/Base_A . A medida que las nuevas versiones de Base_A estén disponibles, compromételas, sin modificar, a esta twig. git add -A hace fácil. Simplemente suelte la nueva versión en el directory de trabajo (si está en un zip o tarball, descomprímala), git add -A , y commit.

A continuación, combine o vuelva a calcular el vendor/Base_A y Base_B como cualquier otra twig.