特定のコミット会社のGitHubから.zipをダウンロードする方法


106

githubでホストされているライブラリのソースを含む.zipをダウンロードしたいのですが、ダウンロードするたびに異なるバージョンをダウンロードする可能性があるため、マスターは必要ありません。

この特定のライブラリにはタグがないため、使用できません。

では、特定のcommit shaのsource.zipをダウンロードするにはどうすればよいですか?


3
これはphpやcomposer-phpでタグ付けする必要はありませんか?
カコフスキー2013

回答:


218

必要なshaをダウンロードURLに入れることができます。

https://github.com/{username}/{projectname}/archive/{sha}.zip

原則として、機能するURLがある場合は、「master」を必要な特定のshaに置き換えることができます。

UNIXの場合:

wget https://github.com/{username}/{projectname}/archive/{sha}.zip

これがプライベートリポジトリの場合、OAuthトークンも渡さない限り、wgetは機能しないことに注意してください。

これに関する詳細は次のとおりです。

Private RepoからGitアーカイブtarballをダウンロードできない


7
その(クールな)やり方を期待していませんでした。gitコマンドを期待していました;)
HenchHacker

同様に、このリンクをチェックしてください-この代わりを探している場合がございますstackoverflow.com/a/48503019/341117
ラビンドラGullapalli

ショートシャも使えます!
wjandrea

wget -OアーカイブZIPファイルの名前を変更するために使用しても、解凍すると大きな醜いSHA1ディレクトリ名が表示されます。これを回避する方法はありますか?
QED

40

コミットのコードを表示したら、右上の「コードを参照」ボタンをクリックしてから、「ZIPをダウンロード」をクリックします。


1
現在、「クローンまたはダウンロード」ボタンがあり、「ZIPをダウンロード」できます。
SureshS

「クローンまたはダウンロード」は、以前の「クローン」および「ダウンロード」ボタンに代わる新しいボタンです。新しいボタンは特定のバージョンを実行しません-Zekiが説明した方法を使用してください
pal

3
これは私にとって2017年2月に機能しました。選択したコミットのタイムスタンプで変更されたリポジトリをダウンロードしました。
ocean4dream 2017

7

これは古い質問ですが、コミット時のリポジトリ全体ではなく、パッチとしてコミットだけが必要な場合は、次のように使用できます。

$ wget http://github.com/username/repo/commit/sha1.patch
#                        ^^^^^^^^ ^^^^        ^^^^
#                        change   change      change

/commitそして.patch重要な一部である部品。

これは、しばらく元に戻されたためにフォークされたリポジトリに存在しない変更をマージする場合に特に便利です。

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