Pregunta básica: ¿Cómo desasocio un repositorio git del origen del que fue clonado?
git branch -a
muestra:
* master
remotes/origin/HEAD -> origin/master
y quiero eliminar todo el conocimiento de origen y las revisiones asociadas.
Pregunta más larga: quiero tomar un repositorio de subversión existente y hacer una serie de repositorios git más pequeños a partir de él. Cada uno de los nuevos repositorios git debe tener el historial completo de solo la rama relevante. Puedo podar el repositorio solo para el subárbol deseado usando:
git filter-branch --subdirectory-filter path/to/subtree HEAD
pero el repositorio resultante aún contiene todas las revisiones de los subárboles ahora descartados bajo la rama origen / maestro.
Me doy cuenta de que podría usar el indicador -T para git-svn para clonar el subárbol relevante del repositorio de subversión en primer lugar. No estoy seguro de si eso sería más eficiente que luego ejecutar múltiples instancias de git filter-branch --subdirectory-filter
copias del repositorio de git, pero, en cualquier caso, todavía me gustaría romper el enlace con el origen.
--prune-empty
que me faltaba.