Jak pobrać źródło w formacie ZIP z GitHub?


256

Widzę coś dziwnego, na przykład:

http://github.com/zoul/Finch.git

Teraz nie jestem tym kolesiem z CVS, SVN itp. Kiedy otwieram to w przeglądarce, mówi mi, że zrobiłem coś złego. Założę się, że potrzebuję narzędzia w stylu hakera? Jakiś klient?

(Mam na myśli ... dlaczego po prostu nie dostarczyć pliku ZIP? Czy świat nie jest wystarczająco złożony?)

Odpowiedzi:


192

Aby sklonować to repozytorium za pomocą takiego adresu URL : tak, potrzebujesz klienta, a tym klientem jest Git . Dzięki temu możesz wprowadzać zmiany, własne gałęzie, łączyć się z powrotem w synchronizacji z innymi programistami, utrzymywać własne źródło, które możesz łatwo aktualizować bez pobierania całości za każdym razem i zapisywania własnych zmian itp. Wygrał plik ZIP nie pozwolę ci tego zrobić.

Jest przeznaczony głównie dla osób, które chcą opracować źródło, a nie dla osób, które chcą po prostu je zdobyć i nie wprowadzać zmian.

Ale tak się składa, że ​​możesz również uzyskać plik ZIP:

Kliknij http://github.com/zoul/Finch/, a następnie kliknij zielony Clone or Downloadprzycisk. Spójrz tutaj:

wprowadź opis zdjęcia tutaj


2
Czy jest jakiś sposób, aby nie trzeba pobierać całego repozytorium? Powiedzmy, jeśli repozytorium jest repozytorium „wtyczek”, a chcesz tylko jedną wtyczkę?
Mala

2
nie bez korzystania z interfejsu API Github, o ile wiem.
Christoph

197

Co się stanie, gdy właściciel repozytorium nie przygotuje pliku zip, a chcesz, aby pobieranie wykorzystało sam? Jest odpowiedź i nie musisz iść przez ten okropny proces, aby pobrać oprogramowanie, zainstalować i zarejestrować klucze itp. Na GitHub itp.!

Aby po prostu pobrać repozytorium jako plik zip: dodaj dodatkową ścieżkę „/ zipball / master /” na końcu adresu URL repozytorium i voila, daje on plik zip całej partii.

Na przykład,

http://github.com/zoul/Finch/

staje się:

http://github.com/zoul/Finch/zipball/master/

Następnie udostępnia plik zip do pobrania.


1
DZIĘKUJĘ CI! Musiałem pobrać kod z repozytorium, które nie miało pliku zip, i to działało idealnie. Nigdy bym nie zorientował się, co robię z pomocy github.
weronika

3
Niesamowite informacje, przyjacielu. Wiele razy chciałem pobrać różne gałęzie bez konieczności instalowania git. Szczerze mówiąc, nie rozumiem, dlaczego po prostu nie ma linku do tego ...
Zaptree,

4
Chciałbym, żeby to zadziałało, ale nie powodzenia tutaj: github.com/facebook/php-webdriver - gdy dodam „zipball / master /” na końcu tego adresu URL, po prostu pojawia się komunikat o błędzie. Powtarzam oryginalny komentator ... Po prostu nie rozumiem, dlaczego tak trudno jest pobrać kod źródłowy, który widzę na github. Nie chcę klienta git, nie chcę się uczyć git, chcę tylko ściągnąć pliki, które są tuż przed moją twarzą :-)
Eric


2
Doskonała wskazówka! Upewnij się tylko, że znajdujesz się w górnym folderze repozytorium podczas dodawania / zipball / master /.
Peter H

170

Zaktualizowano lipiec 2016 r

Od lipca 2016 r. Download ZIPPrzycisk został przeniesiony Clone or download do pozycji skrajnej prawej strony nagłówka podCodezakładką:

Pobierz ZIP (2013)


Jeśli nie widzisz przycisku:

  • Upewnij się, że wybrałeś <> Code zakładkę z menu nawigacji po prawej stronie lub
  • Repo może nie mieć przygotowanego pliku zip. Dodaj /archive/master.zipna końcu adresu URL repozytorium i wygeneruj plik zip gałęzi master:

http://github.com/user/repository/ -to-> http://github.com/user/repository/archive/master.zip

aby uzyskać kod źródłowy oddziału głównego w pliku zip. Możesz zrobić to samo z tagami i nazwami gałęzi, zastępując masterw powyższym adresie URL nazwą gałęzi lub tagu.


4
Ponadto, jeśli chcesz tarball zamiast zip, możesz zmienić ten adres URL, aby na końcu powiedzieć „.tar.gz”.
Eric

3
Wygląda na to, że <> Kod jest wybrany domyślnie, ale nie jest. Kliknij na to!
Steve Wash

Dzięki @SteveWash. To po prostu szalone. Myślałem również, że karta Kod została już wybrana. To naprawdę kiepski interfejs użytkownika (ale okej, jak tylko nauczysz się tej sztuczki, poznasz ją na zawsze ...)
Mike Gledhill

Jeśli nazywasz swoje tagi v1.0, plik zip ignoruje pliki do vpobrania repo-1.0. Czy to błąd w githubie?
Debaprio B,

40

Aby pobrać repozytorium jako plik zip przez curl:

curl -L -o master.zip http://github.com/zoul/Finch/zipball/master/

Jeśli twoje repozytorium jest prywatne:

curl -u 'username' -L -o master.zip http://github.com/zoul/Finch/zipball/master/

Źródło: Github Help


Słodkie! działało jak urok, miałem limity uprawnień w systemie wsadowym bez przeglądarki i ten był tym, czego potrzebowałem!
HoofarLotusX

Z wget jest jeszcze krótszy:wget https://github.com/zoul/Finch/archive/master.zip
Noam Manos

25

Według stanu na grudzień 2016 r. Clone or downloadPrzycisk nadal znajduje się pod <> Codekartą, jednak teraz znajduje się po prawej stronie nagłówka:

Klon Github lub pobierz zrzut ekranu


Czy dotyczy to również starego układu?
Makoto,


Być może dlatego, że nie jesteś zalogowany. Właśnie sprawdziłem i github nieco zmienił układ. Jednak przycisk jest teraz zielony i oznaczony jako „Klonuj lub pobierz” (w repozytorium przycisk pobierania prowadzi do: github.com/Antonioya/blender/archive/master.zip )
Bendy,

1
Zalogowałem się i nadal nie widzę zielonego przycisku - zamiast „Klonuj lub pobierz” jest napisane „Historia”
Miryafa

1
@Miryafa Ponieważ pobieranie jest wyłączone dla tego repozytorium. Sprawdź notatkę na Readme. Mówi: „*** UWAGA *** MeasureIt jest teraz częścią oficjalnych wydań Blendera, więc to repozytorium Git służy wyłącznie jako odniesienie. Jeśli chcesz pobrać ostatnie wersje lub zgłosić błąd, skorzystaj ze strony Blendera”.
Anwar,


8

Chociaż jest to dość stare pytanie, mam 2 centy do podzielenia się.

Możesz również pobrać repo jako tar.gz

Podobnie jak zipballlink wskazywany tutaj przez różne odpowiedzi, istnieje również tarballlink, który pobiera zawartość repozytorium git w tar.gzformacie.

curl -L http://github.com/zoul/Finch/tarball/master/

Lepszy sposób

Git zapewnia również inny wzorzec adresu URL, w którym możesz po prostu dołączyć typ pliku, który chcesz pobrać na końcu adresu URL. Ten sposób jest lepszy, jeśli chcesz przetwarzać te adresy URL w skrypcie wsadowym lub bash.

curl -L http://github.com/zoul/Finch/archive/master.zip

curl -L http://github.com/zoul/Finch/archive/master.tar.gz

Aby pobrać określony zatwierdzenie lub oddział

Wymienić masterz commit-hashlub branch-namew powyższych adresy, takie jak poniżej.

curl -L http://github.com/zoul/Finch/archive/cfeb671ac55f6b1aba6ed28b9bc9b246e0e.zip    
curl -L http://github.com/zoul/Finch/archive/cfeb671ac55f6b1aba6ed28b9bc9b246e0e.tar.gz

curl -L http://github.com/zoul/Finch/archive/your-branch-name.zip
curl -L http://github.com/zoul/Finch/archive/your-branch-name.tar.gz

6

Ogarnęło mnie to również. Przycisk „Pobierz” znajduje się po prawej stronie, ale musisz także znajdować się w górnym folderze, aby pobrać to, co widzisz. Wejdź jak najwyżej do folderu nadrzędnego / głównego, a następnie poszukaj przycisku pobierania.


1

Czasami, jeśli przycisk „Pobierz plik ZIP” nie jest dostępny, możesz kliknąć „Raw”, a plik powinien zostać pobrany do systemu.


Lub, jak wspomniano w innym miejscu na tej stronie, nawet jeśli karta „Kod” wygląda na wybraną ... może nie być. Kliknij ponownie „Kod” i sprawdź, czy pojawi się przycisk „Klonuj lub pobierz”.
Mike Gledhill,


0

Napotkałem ten sam problem, ale przypadkowo rozwiązałem ten problem. 1) Zaloguj się w github 2) Kliknij przycisk Fork w prawym górnym rogu. 3) Po powyższym kroku możesz zobaczyć Klonowanie lub pobrać w kolorze zielonym w zakładce <> Kod.


0

Możesz także opublikować wydanie wersji na Github, a istnieje możliwość pobrania kodu źródłowego tego wydania w pliku zip.

Następnie możesz udostępnić link do pliku zip każdemu, aby pobrać kod źródłowy projektu.


0

W chromie, po najechaniu kursorem na Pobierz ZIP , otrzymasz link na dole przeglądarki

wprowadź opis zdjęcia tutaj

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.