// ==UserScript== // @icon https://github.githubassets.com/favicon.ico // @name FastGithub 镜像加速访问、克隆和下载 // @namespace RC1844.FastGithub // @author RC1844 // @homepageURL https://github.com/RC1844/FastGithub // @supportURL https://github.com/RC1844/FastGithub/issues // @license MIT License // @description 镜像访问GitHub,极速Clone、Release/Raw/Zip加速;十几个站点可供选择;前往项目Github仓库查看免费搭建Github镜像站点方法 // @include *://github.com/* // @include *://github* // @include *://hub.fastgit.org/* // @require https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js // @version 1.6.2 // @run-at document-end // @downloadURL none // ==/UserScript== (function () { //=true为启用,=false为禁用 var clone = true; // var clone = false; var depth = true; // var depth = false; var Setting = ""; if (clone) { Setting += "git clone "; if (depth) { Setting += "--depth=1 "; } } var MirrorUrl = new Array();//["Url", "Name", "Tip"] MirrorUrl[0] = ["https://github.com.cnpmjs.org", "Cnpmjs", "由cnpmjs.org提供"]; MirrorUrl[1] = ["https://hub.fastgit.org", "FastGit", "由KevinZonda推动的FastGit项目,目前项目资金不足,接受捐赠中"]; MirrorUrl[2] = ["https://github.wuyanzheshui.workers.dev", "CF加速 1", "每日10万次调用上限,由wuyanzheshui提供"]; MirrorUrl[3] = ["https://github.bajins.com", "Bajins", "Bajins的个人站点"]; MirrorUrl[4] = ["https://download.fastgit.org", "FastGit", MirrorUrl[1][2]]; MirrorUrl[5] = ["https://github.rc1844.workers.dev", "CF加速 2", "每日10万次调用上限,由RC1844提供"]; MirrorUrl[6] = ["https://gitclone.com/github.com", "GitClone", "GitHub缓存加速网站,1元开会员尽享极速"]; MirrorUrl[7] = ["git@git.zhlh6.cn:", "加速你的Github", "利用ucloud提供的GlobalSSH"]; MirrorUrl[8] = ["https://github-speedup.laiczhang.com", "laiczhang", "laiczhang的个人站点"]; MirrorUrl[9] = ["https://cdn.jsdelivr.net/gh", "jsDelivr", "项目当前分支总文件大小不可超过 50MB"]; MirrorUrl[10] = ["https://ghproxy.com/https://github.com", "Ioiox", "CN2 GIA 线路"]; MirrorUrl[11] = ["https://raw.fastgit.org", "FastGit", MirrorUrl[1][2]]; MirrorUrl[12] = ["https://cdn.staticaly.com/gh", "Statically", "只能浏览图片和源代码文件,文件大小限制为30MB"] // MirrorUrl[13] = ["https://github.iapk.cc", "IAPK", "IAPK工具箱·Github下载器"] MirrorUrl[14] = ["https://iapk.cc/github?url=https://github.com", "IAPK", "IAPK工具箱·Github下载器"] MirrorUrl[15] = ["https://gh.haval.gq", "CF加速 3", "每日10万次调用上限,由Ecalose提供"] //添加对应索引即可使用 var CloneSet = [1, 0, 6, 10]; var MirrorSet = [1, 0, 3, 2, 5, 15]; var DownloadSet = [4, 2, 5, 15, 10, 14]; var RawSet = [3, 2, 5, 15, 14]; //其他 var OtherUrl = new Array(); OtherUrl = [ ["https://github.com/RC1844/FastGithub", "脚本Github仓库地址,点个赞谢谢"], ["https://greasyfork.org/zh-CN/scripts/397419", "GreasyFork地址,希望可以给我评分收藏"], ["https://doc.fastgit.org/", "FastGit,资金不足,接受捐赠中"], ["https://minhaskamal.github.io/DownGit", "DownGit"], ["https://zhoudaxiaa.gitee.io", "DownGit 周大侠啊"], ["https://gitclone.com", "GitClone,1元开会员"], ["https://d.serctl.com", "GitHub中转下载"], // ["https://iapk.cc/github", "IAPK工具箱·Github下载器"], ["https://toolwa.com", "孟坤工具箱"], ["https://github.zhlh6.cn/", "加速你的Github"], ["http://gitd.cc", "GitHub代下服务"], ["https://gh.isteed.cc", "gh-proxy部署站点1"], ["https://github.zsxwz.workers.dev", "gh-proxy部署站点2"], ["https://gh.api.99988866.xyz", "gh-proxy部署站点3"], ["https://gh.sky-and-poem.fun", "gh-proxy部署站点4"], ["https://github.b15.me", "gh-proxy部署站点5"], ]; var CloneList = addCloneList(); var OtherList = addOtherList(); var isPC = IsPC(); run(); $(document).on("pjax:success", function () { $("#mirror-menu").remove(); run(); }); function run() { addMenus(CloneList + addBrowseList() + OtherList); if (location.pathname.split("/")[3] == "releases") addReleasesList(); if (isPC) addDownloadZip(); addRawList(); } /** * 添加Raw列表 */ function addRawList() { $("#raw-url").each(function () { var href = $(this).attr("href"); rawHtml(11, MirrorUrl[11][0] + href.replace("/raw", "")); RawSet.forEach((element) => { rawHtml(element, MirrorUrl[element][0] + href); }); rawHtml(9, MirrorUrl[9][0] + href.replace("/raw/", "@")); rawHtml(12, MirrorUrl[12][0] + href.replace("/raw", "")); function rawHtml(element, Url) { var span = $("#raw-url").clone().removeAttr("id"); span.attr({ href: Url, title: MirrorUrl[element][2], target: "_blank", }); span.text(MirrorUrl[element][1]); $("#raw-url").before(span); } }); } /** * Fast Download ZIP */ function addDownloadZip() { $("a[data-open-app='link']").each(function () { var span = $(`
`); var href = $(this).attr("href"); var clone = $(this) .clone() .removeAttr("data-hydro-click data-hydro-click-hmac data-ga-click"); clone.addClass("Box-row Box-row--hover-gray"); DownloadSet.forEach((element) => { var span1 = clone.clone(); span1.attr({ href: MirrorUrl[element][0] + href, title: MirrorUrl[element][2], }); span1.html( span1.html().replace("Download ZIP", `Download ZIP(${MirrorUrl[element][1]})`) ); span = span.clone().append(span1); }); $(this).parent().after(span); }); } /** * 添加Releases列表 */ function addReleasesList() { $(".Box--condensed").find("[href]").each(function () { var href = $(this).attr("href"); $(this).parent().after(`