– EDITAR – Terminé copyndo todos los files a otra carpeta desde allí. Sin el historial de compromiso. 🙁
Gracias por responder tho.
– / EDITAR –
Soy nuevo en git. Para mi aplicación html5 utilicé la plantilla html5 de aptana que instala un repository git para usted. Bonito. Ahora, después de trabajar en mi aplicación durante unas semanas, quiero enviarlo a github. Creé un nuevo repository allí.
Ahora cuando bash presionar a github desde el shell o tortoisegit, me encuentro con errores después de cargar todos los files:
$ git push -u origin master ... remote: error: unable to find b4587434...<snip>...c701 (probably a checksum) remote: fatal: objet of unexpected type error: unpack failed: index-pack abnormal exit ! [remote rejected] master -> master (unpacker error) error: failed to push some refs to 'https://github.com/<user>/<project>.git'
He estado buscando una solución, pero todavía no he podido encontrar algo. Algunas acciones que intenté no ayudaron:
Por favor ayuda, es realmente frustrante que git les cueste tanto time encontrar algo que debería ser simple. 🙁
Nota: al less con git 2.0.1 (25 de junio de 2014), el post de error podría ser más específico.
Ver commit 77583e7 por Jeff King ( peff
) :
index-pack
: distinguir los objects faltantes de los errores de tipo Cuando buscamos un package que no contiene un object que esperábamos recibir, obtenemos un error como:
$ git init --bare tmp.git && cd tmp.git $ git fetch ../parent.git [...] error: Could not read 964953ec7bcc0245cb1d0db4095455edd21a2f2e fatal: Failed to traverse parents of commit b8247b40caf6704fe52736cdece6d6aae87471aa error: ../parent.git did not send all necessary objects
Esto proviene de
check_everything_connected rev-list
. Si tratamos de clonar el mismo repository (en lugar de unafetch
), terminamos utilizando la opción de--check-self-contained-and-connected
index-pack
--check-self-contained-and-connected
, que produce resultados como:
$ git clone --no-local --bare parent.git tmp.git [...] fatal: object of unexpected type fatal: index-pack failed
No solo falta el sha1, sino que es un post engañoso.
No hay problema de tipo, sino más bien un problema de object faltante; no notamos la diferencia porque simplemente comparamosOBJ_BAD != OBJ_BLOB
.
Vamos a proporcionar un post diferente para este caso:
$ git clone --no-local --bare parent.git tmp.git fatal: did not receive expected object 6b00a8c61ed379d5f925a72c1987c9c52129d364 fatal: index-pack failed
Mientras estamos en ello, también vamos a mejorar un verdadero error de desajuste de tipo para que se vea como
fatal: object 6b00a8c61ed379d5f925a72c1987c9c52129d364: expected type blob, got tree
Entonces, una cosa que podrías intentar es:
Eliminar cualquier control remoto de origen antiguo
git remote git remote rm origin
Crea un control remoto github llamado "origen" (o el nombre que quieras)
git remote add origin git@github.com:USER_NAME/REPO_NAME.git
Empuja tus files al control remoto que acabas de agregar
git push remote origin master
estos pasos son asumir que has hecho:
git init # creates a local repo git add . # adds all files in the current directory git commit -m "init commit" #commits your init
Sé que estos son pasos muy básicos y es posible que no responda el error que recibió, pero estos pasos
Otra cosa que debes probar es verificar si tienes un repository dentro de un repository. esto es algo con lo que mis alumnos se topan a veces. causará algunos errores al atar para empujar y también con permissions
Intenté reflejar el arranque de Twbs, pero obtuve un error como este y mi problema fue que --depth=1
el repository con --depth=1
. Re- --depth=
el repository sin el argumento --depth=
y todo funcionó perfectamente usando estos pasos:
git clone --bare https://github.com/twbs/bootstrap.git
cd bootstrap.git
git push --mirror git@github.com:yourusername/your-repo-name.git
cd ../ && rm -rf bootstrap.git
git clone git@github.com:yourusername/your-repo-name.git
cd your-repo-name
git remote add twbs https://github.com/twbs/bootstrap.git
Ahora puede presionar a su propia versión del repository con el git push origin master
y si desea get cambios del repository original, puede hacer git pull twbs master
.
Más información disponible @ https://help.github.com/articles/duplicating-a-repository/