コマンドラインを使用してGitHubリポジトリを.zipとしてダウンロードする方法


9

Ubuntuのコマンドラインを使用してGitHubから.zipファイルをダウンロードしようとしています。wgetリモートUbuntuシステムでコマンドを使用しています。

私は実行wget <link>ところ<link>、私がダウンロードしたいファイルのアドレスバーのリンクです。で終わりarchive.zip?ref=masterます。

今、私がコマンドを実行しているとき、それは私が望むファイルではtext/htmlなくタイプのファイルをダウンロードしています.zip

のパラメータとしてリンクを取得する方法を教えてくださいwget。現在、ボタンのリンクアドレスを(右クリックを使用して)コピーし、それをwgetパラメーターとして書き込んでいます。


貼り付けている正確なコマンドを教えてください。
kashish 2017

1
あなたのURLは本当に.zipで終わっていますか?
kashish 2017

@kashishいいえURLが.zipで終わっていません。私はgithubからプロジェクトをダウンロードしようとしています、それはzipと他のオプションを与えるダウンロードボタンがあります。だから、私はそこから試みています。archive.zip?ref=masterで終了します
UbuntuCoder 2017

githubのプロジェクトをダウンロードするには、使用することができますgit clone <projectlink.git>
kashish

1
私は間違っていない場合、それは可能な次のアドレスを使用して、ジップファイルとしてリポジトリをダウンロードする:https://github.com/{user}/{repo}/archive/{branch}.zip
アレックスChermenin

回答:


11

コメントから、あなたが実際にGitHubについて話すのを見ました。

次の理由により、このようには機能しません。

GitHubにプロジェクトをダウンロードすると、GitHubサーバーは最初にプロジェクトをzipとしてパックし、zip を取得する一時リンクに転送します。

このリンクは特定の時間のみ機能し、GitHubはサーバーからzipファイルを削除します。

したがって、wgetで取得できるのは、zipファイルが生成されるとすぐに転送されるhtmlページだけです。

推奨される使用法

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

git repoをダウンロードするには...何らかの理由で(たとえば、他の人に転送するために)zipとして明示的に必要な場合は、複製が完了した後でも圧縮できます。


2
クローン作成後git archive -o output.zip、zipファイルがまだ必要な場合は、
Ferrybig

git clone当然動作しますが、リポジトリをダウンロードするためだけにgitをインストールしても意味がない場合があります。
RobinMétral

0

正しいURLを使用すれば機能します。GitHubリポジトリの場合、zipがhttps://github.com/user/repo/archive/master.zipにあるため、次のようにしてダウンロードできます。

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

これはのmasterブランチをダウンロードしますuser/repo。masterを他のブランチまたはコミットハッシュに置き換えることができます。

これは、以下でcURLを使用するのと似ています。

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

cURLの-Lフラグはリダイレクトに従います-これはwgetのデフォルトです。

tarballをダウンロードすることもできます:

wget https://github.com/user/repo/archive/master.tar.gz
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.