Jak utworzyć serwer lustrzany github dla zewnętrznego repozytorium git, tak aby wyglądał jak „prawdziwy serwer lustrzany”, np. Https://github.com/mirrors ?
Do tej pory ustawiłem lustro za pomocą:
cd /path/to/bare/repository
git remote add --mirror github [email protected]:user/repo.git
i skonfiguruj punkt odbioru wiadomości, aby wykonać git push --quiet github
. W ten sposób jednak github nie rozpoznaje lustra.
Jakieś pomysły, jak to zrobić na githubie, tak, że „Mirrorred from” pojawia się pod nazwą repostiory?
Odpowiedzi:
Na podstawie komunikacji z zespołem wsparcia GitHub stwierdziłem, że obecnie GitHub nie oferuje bezpośredniego mechanizmu umożliwiającego użytkownikowi tworzenie kopii lustrzanych repozytoriów w ten sposób.
Można jednak poprosić GitHub o zainstalowanie tej usługi dla repozytoriów, które są częścią organizacji. Następnie GitHub konfiguruje istniejące repozytorium jako takie lustro i pobiera z niego w odstępach czasu zależnych od ogólnej liczby posiadanych serwerów lustrzanych.
EDYCJA : jak wskazuje Stuart, GitHub nie akceptuje już próśb o dublowanie dowolnych repozytoriów. Jedyną pozostałą opcją jest rozwiązanie, które zamieściłem w swoim pytaniu, tj. Utworzenie podpięcia po odbiorze, aby automatycznie wypchnąć do repozytorium GitHub.
źródło
Sądząc po aktualnej zawartości https://github.com/mirrors , wydaje się, że GitHub nie robi już „oficjalnych kopii lustrzanych”, ponieważ większość projektów, które obecnie chcą, aby ich kod był odzwierciedlany w GitHub, po prostu tworzy dla niego organizację, taką jak sam Git .
Istnieje również prośba o funkcję pod adresem : https://github.com/isaacs/github/issues/415
źródło
Zgodnie z Importing a Git :
Do celów demonstracyjnych użyjemy:
Linia poleceń:
źródło
git clone --bare
igit clone --mirror
? Czy nie bardziej pasuje tu drugi wariant?Użyłem narzędzia o nazwie github-backup z umiarkowanym sukcesem, jeśli nie lustrzanym, przynajmniej do wykonania pełnej kopii zapasowej (w tym problemów i innych metadanych) użytkownika lub organizacji Github. Cytując plik README :
Ograniczenia obejmują:
źródło