To do this, go to the GitHub page for the workshop, click on the green Code button, then download the repository as a ZIP file. The filename may be different than what's in the picture. Find the downloaded . zip file on your computer, likely in your Downloads folder.
GitHub lets you download one file from a repository. This is a useful feature because it means you do not have to clone or retrieve an entire repository to download a particular file. You cannot retrieve a single file using the git command line, even if your repository is hosted on GitHub.
You can put the sha that you want in the download url:
https://github.com/{username}/{projectname}/archive/{sha}.zip
As a general rule, if you have a url that works, you can replace "master" with the specific sha you want.
On unix:
wget https://github.com/{username}/{projectname}/archive/{sha}.zip
Keep in mind that if this is a private repo then wget will not work unless you pass an OAuth token as well.
Here's more info on that:
Having trouble downloading Git archive tarballs from Private Repo
When viewing the commit's code, click the button "Browse Code" on the upper right, after that click on "Download ZIP".
This is a an old question, but wanted to mention that if you want just the commit as a patch, and not the whole repo at the time of the commit, you can use:
$ wget http://github.com/username/repo/commit/sha1.patch
# ^^^^^^^^ ^^^^ ^^^^
# change change change
The /commit
and .patch
parts being the important part.
This is particularly useful if you want to merge in a change that was reversed a while back and therefore doesn't exist in the forked repo.
For those who came here looking for a way to download a particular file (or directory), from a particular commit (or branch):
git_user="user-name"
git_project="project-name"
commit_or_branch="sha-id or branch name"
dir_or_file="path/to/dir-or-file"
archive_url="https://github.com/${git_user}/${git_project}/archive/${commit_or_branch}.tar.gz"
wget -O - ${archive_url} | tar xz --strip=1 "${git_project}-${commit_or_branch}/${dir_or_file}"
The advantage of downloading the archive as tar.gz
, is that you can directly pipe wget into tar command, so it will extract the gz on the fly.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With