LRu
Descargué e instalé Git Large File Storage. Ahora estoy tratando de obtener archivos lfs del repositorio existente en github (no el mío). Lo intenté:
git lfs clone https://github.com/xxx/xxx
luego en mi repositorio local recién clonado:
git lfs fetch --all
git lfs pull
También probé lo mismo pero sin “lfs”.
El repositorio está clonado pero para todos los archivos lfs siempre se muestra este error:
[301582dabd8c6ac7bdf626c7e4a1d64c8f9665b65b6334b44642bdfb78054575] Object does not exist on the server: [404] Object does not exist on the server
y luego:
error: failed to fetch some objects from 'https://github.com/xxx/xxx.git/info/lfs'
Como resultado, en lugar de archivos realmente grandes, se clonan sus pequeños punteros que se pueden ver en GitHub.
Al mismo tiempo este comando:
git log --all -p -S 301582dabd8c6ac7bdf626c7e4a1d64c8f9665b65b6334b44642bdfb78054575
da los siguientes resultados:
commit 36c7dba69de90d99f0c305fce13a598b8f06b443
Author: xxx
Date: Wed Sep 11 18:01:25 2019 +0200
Add embeddings
diff --git a/embeddings/wikipedia/0.pkl b/embeddings/wikipedia/0.pkl
new file mode 100644
index 0000000..5ee94da
--- /dev/null
+++ b/embeddings/wikipedia/0.pkl
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:301582dabd8c6ac7bdf626c7e4a1d64c8f9665b65b6334b44642bdfb78054575
+size 588838774
No soy un usuario muy seguro de GitHub, especialmente de LFS. Entonces, la pregunta es: ¿estoy haciendo algo mal o significa que los archivos no existen en el servidor?
Este mensaje de error es un error HTTP 404 No encontrado. Básicamente, eso significa que Git LFS intentó extraer el archivo, pero no estaba allí. Con toda probabilidad, el usuario no lo cargó correctamente, posiblemente porque no se ejecutó git lfs install
. Si hubieran ejecutado ese comando, el pre-push
hook instalado en su repositorio habría enviado los archivos al servidor antes de que se cargaran los objetos de Git.
Como los archivos no se cargaron, no hay forma de que los descargues. Tendrás que pedirle al autor que ejecute git lfs push --all
en su repositorio para cargarlos en la ubicación adecuada para que puedan descargarse.
-
¿Es posible forzar a git a omitir este archivo? En mi caso, el “autor” ya no trabaja para la empresa. No necesito ese archivo lfs específico, pero necesito el resto del pull para tener éxito
–Brydon Gibson
7 dic 2021 a las 17:55
Si está migrando de un repositorio GIT a otro, deberá obtener el historial completo de LFS del repositorio de origen y enviar el historial completo de LFS a un nuevo repositorio de destino (vacío) para evitar perder lfs objs. Mis pasos para migrar del repositorio de origen al repositorio de destino:
Clone desde el repositorio de origen y descargue el historial completo de LFS
git clone http://source... local_src
cd local_src
git lfs fetch --all
Empuje al nuevo repositorio de destino y cargue el historial completo de LFS
git remote set-url origin https://target...
git push --mirror origin
git lfs push origin --all
-
¿Esto empuja solo los archivos lfs o todo el proyecto? ¿Cómo empujo todo el proyecto?
– barcaman
21 de junio de 2021 a las 5:40
-
Estoy tratando de migrar de bitbucket a github. Hay un archivo en bitbucket lfs. Es el único archivo que arroja este error 404, incluso cuando uso
git lfs fetch --all
. No estoy seguro de por qué ocurre esto.– Artem Russakovskii
10 de marzo de 2022 a las 1:42
-
Actualización: terminé teniendo que descargar el archivo de bitbucket manualmente usando bitbucket.org/REPOURL/admin/lfs/file-management y copiarlo en el directorio `lfs\objects\XX\YY` de git correspondiente a los primeros 4 caracteres de este nombre de archivo. No estoy seguro de por qué git no pudo descargarlo automáticamente desde bitbucket y resultó en un 404.
– Artem Russakovskii
10 de marzo de 2022 a las 7:53