]> Sergey Matveev's repositories - stargrave-blog.git/commitdiff
Зеркалирование AUR зеркала
authorSergey Matveev <stargrave@stargrave.org>
Tue, 13 Jun 2023 08:08:46 +0000 (11:08 +0300)
committerSergey Matveev <stargrave@stargrave.org>
Tue, 13 Jun 2023 08:08:46 +0000 (11:08 +0300)
https://github.com/archlinux/aur
Есть Git-репозиторий со всеми AUR пакетами. Каждый находится в своей
ветке, а это почти 115k штук. Просто так сделать git clone не выходит
из-за этого. Но можно доставать все эти данные частями, просто получив
список веток, а дальше по тысяче (например) штук их запрашивать:

    git ls-remote https://github.com/archlinux/aur.git |
    cut -f2 | sed -n "s/^refs.heads.//p" |
    xargs -L1000 | while read pkgs ; do
        for pkg in $pkgs ; do echo ${pkg}:${pkg} ; done | git fetch --stdin origin
    done

А ещё стоит сделать "git config gc.auto 0", так как Git упорно запускает
gc при всём этом, сильно тормозя весь процесс. gc можно вызвать руками потом.


No differences found