Len rýchla aktualizácia o tom, ako sa mi podarilo obnoviť git repozitár uložený v Gitea a zálohovaný pomocou restic.

Upozornenie: tento postup pravdepodobne nebude správne fungovať so súbormi LFS, no tieto nemusia byť také kritické na obnovu, alebo daný repozitár LFS vôbec nepoužíva.

Obnov bare repozitár:

restic --repo path/to/repository restore latest --target restored --include /path/to/gitea/data/git/repositories/peter.babic/MY-REPOSITORY.git

Skopíruj repozitár sem a vstúp do neho:

cp -r restored/path/to/gitea/data/git/repositories/peter.babic/MY-REPOSITORY.git .
cd MY-REPOSITORY.git

Vytvor priečinok .git vo vnútri:

mkdir .git

Presuň všetko do tohto priečinka (predpokladá sa zsh):

setopt extendedglob
mv ^.git .git
unsetopt extendedglob

Resetuj index, keďže všetko sa zobrazí ako zmazané a staged:

git reset --hard

Voliteľne oprav origin:

Uprav súbor .git/config a pridaj riadok fetch = +refs/heads/*:refs/remotes/origin/* za url = <...> v sekcii [remote "origin"].

Enjoy!

Odkazy #