Esta es una pregunta novato, pero estoy preparado para resolver esto. He heredado un problema extraño con un subárbol de git que aparece como como corrupción de repo.Error "Fatal: objeto malo" usando el subárbol git push
Este es el escenario: un subárbol de un proyecto basado en git A está siendo utilizado en el proyecto B. Parte de la utilización script deploy empuja el subárbol a proyectar cesión temporal de B:
git subárbol empuje -P sub/ruta/nombre --squash [email protected]: MiCo/project_b.git projectb_branch
que empieza a empujar las confirmaciones y falla con
"fatal: bad object {sha}"
he buscado por el SCS en git log de la fuente de recompra . Se manifiesta en un compromiso:
git-subtree-dir: app/assets/ui
git-subtree-split: {sha}
el repositorio de destino (project_b) tiene en realidad una confirmación de que SHA pero el repositorio fuente no. Recorrí el script de shell del subárbol Puedo ver que está fallando cuando intenta buscar ese objeto con el registro de git (en la función toptree_for_commit llamando a git log -l --pretty = formato: '% T' {sha}).
En este punto, estoy muy por encima de mi cabeza, pero estoy ansioso por intentar encontrar una solución. Investigué esto en la medida en que mi limitado conocimiento lo permite, por lo que agradezco cualquier consejo, trucos o RTFM que me acerquen un poco a la solución.
mi sincero agradecimiento!
¿Su 'git reflog' local contiene ese' {sha} '? – VonC
no. Lamentablemente no. –