Archivos de Tags: Git

Git: Copiar un fichero o directorio desde otro repositorio preservando la historia

¿Como copiar un único fichero o directorio desde otro repositorio GIT de forma que preserves su historia?

Internet está lleno de formulas mágicas cada cual más compleja.

Aqui os propongo una mucho más simple y rápida que consiste en hacer un git format-patch para toda la historia del fichero o subdirectorio en cuestión y luego importarla en el repositorio de destino.

mkdir /tmp/mergepatchs
cd ~/repo/org
export reposrc=myfile.c #or mydir
git format-patch -o /tmp/mergepatchs $(git log $reposrc|grep ^commit|tail -1|awk '{print $2}')^..HEAD $reposrc
cd ~/repo/dest
git am /tmp/mergepatchs/*.patch

Simple y rápido :)