// ==UserScript== // @icon https://github.githubassets.com/favicon.ico // @name GitHub镜像加速访问、克隆和下载 // @namespace RC1844.FastGithub // @author RC1844 // @homepageURL https://github.com/RC1844/FastGithub // @supportURL https://github.com/RC1844/FastGithub/issues // @license MIT License // @description 镜像访问GitHub、加速克隆和下载;适配Github新UI;增加新克隆站点;前往项目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.5.2 // @run-at document-end // @grant GM_addStyle // @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(); MirrorUrl[0] = "https://github.com.cnpmjs.org"; MirrorUrl[1] = "https://hub.fastgit.org"; MirrorUrl[2] = "https://github.wuyanzheshui.workers.dev"; MirrorUrl[3] = "https://github.bajins.com"; MirrorUrl[4] = "https://download.fastgit.org"; MirrorUrl[5] = "https://github.rc1844.ml"; MirrorUrl[6] = "https://gitclone.com/github.com"; MirrorUrl[7] = "git@git.zhlh6.cn:"; MirrorUrl[8] = "https://github-speedup.laiczhang.com"; MirrorUrl[9] = "https://cdn.jsdelivr.net/gh"; //添加对应索引即可使用 var CloneSet = [1, 8, 0, 6]; var MirrorSet = [1, 8, 0, 3, 2, 5]; var DownloadSet = [4, 8, 2, 5]; var RawSet = [1, 3, 2, 5]; //其他 var OtherUrl = new Array(); OtherUrl = [ { url: "https://github.com/RC1844/FastGithub", name: "脚本Github仓库地址,点个赞谢谢", }, { url: "https://greasyfork.org/zh-CN/scripts/397419", name: "GreasyFork地址,希望可以给我评分收藏", }, { url: "https://minhaskamal.github.io/DownGit", name: "DownGit", }, { url: "https://d.serctl.com/", name: "GitHub中转下载", }, { url: "https://github.zhlh6.cn/", name: "加速你的Github", }, { url: "http://gitd.cc/", name: "GitHub代下载", }, { url: "https://gh.isteed.cc/", name: "gh-proxy部署站点", }, { url: "https://github.zsxwz.workers.dev/", name: "gh-proxy部署站点", }, { url: "https://gh.api.99988866.xyz/", name: "gh-proxy部署站点", }, { url: "https://g.ioiox.com/", name: "gh-proxy部署站点", }, { url: "https://gh.sky-and-poem.fun/", name: "gh-proxy部署站点", }, // { // url: "", name: "", // }, ]; var CloneList = addCloneList(); var OtherList = addOtherList(); addMenus(CloneList + addBrowseList() + OtherList); addReleasesList(); addRawList(); addDownloadZip(); $(document).on("pjax:success", function (evt) { addRawList(); addMenus(CloneList + addBrowseList() + OtherList); addDownloadZip(); }); /** * 添加Raw列表 */ function addRawList() { $("#raw-url").each(function () { var href = $(this).attr("href"); var text = $(this).text(); for (const i in RawSet) { if (RawSet.hasOwnProperty(i)) { const element = RawSet[i]; var span = $(this).clone().removeAttr("id"); span.attr({ href: MirrorUrl[element] + href, title: MirrorUrl[element], target: "_blank", }); span.text(text + i); $(this).before(span); } } var span = $(this).clone().removeAttr("id"); span.attr({ href: MirrorUrl[9] + href.replace("/raw/", "@"), title: MirrorUrl[9], target: "_blank", }); span.text("jsDelivr"); $(this).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"); for (const i in DownloadSet) { if (DownloadSet.hasOwnProperty(i)) { const element = DownloadSet[i]; var span1 = clone.clone(); span1.attr({ href: MirrorUrl[element] + href, title: MirrorUrl[element], }); span1.html( span1.html().replace("Download ZIP", `Fast Download ZIP${i}`) ); span = span.clone().append(span1); } } $(this).parent().after(span); }); } /** * 添加Releases列表 */ function addReleasesList() { $(".Box--condensed").each(function () { $(this) .find(".flex-items-center>a") .each(function () { var href = $(this).attr("href"); var span = ""; if (!IsPC()) { span = `