Как исправить поврежденный файл на сервере git-lfs (gitlab)? - PullRequest
0 голосов
/ 06 ноября 2018

Мы используем GitLab 11.2.1-ee с включенным git-lfs (v.2.4.2).
Мы обнаружили, что испортили объект в git-lfs на сервере. Когда мы бежим

sudo gitlab-rake gitlab:lfs:check VERBOSE=1 

, у нас есть

- 1401..1600: Failures: 1
  - LFS object: b675b00828707cd53dc5c130efce8a9d352e5efd8b9b29f06808810b6ebb5491: Checksum mismatch

Теперь, когда мы пытаемся сделать git lfs pull в клонах, мы получили

Expected OID b675b00828707cd53dc5c130efce8a9d352e5efd8b9b29f06808810b6ebb5491, got 2c6abc2c4d29bd1c7f0041160ea15ea2765df10194a6e9ef3e6e2139c11fc67f after 12427595 bytes written
error: failed to fetch some objects from 'https://192.168.1.100/root/our_project.git/info/lfs'

Как мы должны исправить это повреждение?

1 Ответ

0 голосов
/ 06 ноября 2018

решаемая.

Мы обнаружили, что sha256 сумма содержимого файла b6/75/b00828707cd53dc5c130efce8a9d352e5efd8b9b29f06808810b6ebb5491 на сервере равна 2c6abc2c4d29bd1c7f0041160ea15ea2765df10194a6e9ef3e6e2139c11fc67f (что, похоже, неверно), и содержимое того же файла в клоне репо является правильным (равно b675b00828707cd53dc5c130efce8a9d352e5efd8b9b29f06808810b6ebb5491). Мы заменили содержимое файла b6/75/b00828707cd53dc5c130efce8a9d352e5efd8b9b29f06808810b6ebb5491 на сервере содержимым этого файла из клона репозитория, и теперь все в порядке. Теперь мы можем выполнять операции вытягивания, перемещения и изменения веток в новых клонах без ошибок.

Чтобы получить sha256 на xubuntu, мы использовали

cat b6/75/b00828707cd53dc5c130efce8a9d352e5efd8b9b29f06808810b6ebb5491 | sha256sum

А на mac:

shasum -a 256 b6/75/b675b00828707cd53dc5c130efce8a9d352e5efd8b9b29f06808810b6ebb5491
...