Як завантажити репортаж GitHub як .zip за допомогою командного рядка


9

Я намагаюся завантажити .zip файл з GitHub за допомогою командного рядка в Ubuntu. Я використовую wgetкоманду для цього у віддаленій системі Ubuntu.

Я біжу, wget <link>де <link>знаходиться посилання на адресний рядок файлу, який я хочу завантажити. Він закінчується с archive.zip?ref=master.

Тепер, коли я виконую команду, вона завантажує файл text/htmlтипу, а не той .zipфайл, який я хочу.

Скажіть, будь ласка, як отримати посилання, яке потрібно вказати як параметр wget. Зараз я просто копіюю адресу посилання кнопки (використовуючи клацання правою кнопкою миші) і записую її як wgetпараметр.


чи можете ви сказати точну команду, яку ви вставляєте?
кашиш

1
Чи справді ваша URL-адреса закінчується на .zip?
кашиш

@kashish Ні. URL не закінчується .zip. Я намагаюся завантажити проект з github, і він має кнопку завантаження, що дає zip та інші параметри. Отже, я намагаюся звідти. він закінчується archive.zip?ref=master
UbuntuCoder

Щоб завантажити проект github, ви можете використовуватиgit clone <projectlink.git>
kashish

1
Якщо я не помиляюся, можна завантажити сховище у форматі Zip-файлу за такою адресою:https://github.com/{user}/{repo}/archive/{branch}.zip
Алекс Черменін,

Відповіді:


11

З коментарів я побачив, що ви насправді говорите про GitHub.

Це не працюватиме так:

Завантаження проекту на GitHub призводить до того, що сервер GitHub спочатку запакує ваш проект як zip, а потім переадресує вас на тимчасове посилання, де ви отримаєте свій поштовий індекс.

це посилання працюватиме лише певний час, і тоді GitHub видалить ваш поштовий файл зі своїх серверів ..

Тож, що ви отримуєте з wget - це лише HTML-сторінка, яка пересилатиме вас, як тільки ваш поштовий файл буде створений.

Як пропонується використовувати

git clone http://github.com/<yourRepoLink> <optional local path where to store>

завантажити git repo ... Якщо з якихось причин (наприклад, для передачі їх іншим) він вам явно потрібен, так як zip ви все-таки зможете запакувати його після закінчення клонування ..


2
Після клонування зробіть git archive -o output.zip, якщо поштовий файл все-таки потрібен
Ferrybig

git cloneпрацює, природно, але є випадки, коли не має сенсу встановлювати git просто для завантаження репо.
Робін Мітраль

0

Це спрацює, якщо ви використовуєте правильну URL-адресу. Для репортажу GitHub є поштовий індекс https://github.com/user/repo/archive/master.zip, тому ви можете завантажити його за допомогою:

wget https://github.com/user/repo/archive/master.zip

Це завантажує masterгілку user/repo. Ви можете замінити майстер на будь-яку іншу гілку або хеш-файлу.

Це схоже на використання cURL з:

curl -L https://github.com/user/repo/archive/master.zip

-LПрапор cURL слідує за переадресаціями - це типовий режим у wget.

Зауважте, що ви також можете скачати тарбол за допомогою:

wget https://github.com/user/repo/archive/master.tar.gz
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.