從 github 下載特定版本的源碼
在 github 上, tag 會自動標記為 release, 可方便的以 .zip 或 .tar.gz 的格式下載.
但如果想要的版本沒有加 tag 的話怎麼下載? 答案就在下面的 link
https://developer.github.com/v3/repos/contents/#get-archive-link
格式為
https://github.com/:owner/:repo/:archive_format/:ref
其中 :archive_format 可以是 zipball 或 tarball. :ref 可以是 branch, tag 或 commit ID.
以 zfsonlinux 為例, 項目主頁在此
https://github.com/zfsonlinux/zfs
zfsonlinux 代表 :owner, zfs 代表 :repo, 如果想以 .tar.gz
格式下載 commit b23d54
這個 commit, URL 如下
https://github.com/zfsonlinux/zfs/tarball/b23d54
下載的檔名如下
zfsonlinux-zfs-zfs-0.6.5-29-gb23d543.tar.gz
0.6.5
代表b23d54
是基這個 tag 修改來的gb23d543
代表 commit ID23
代表gd23d543
跟0.6.5
間差了 23 個 commit
更詳細的說明可參考 git-describe.