Github 镜像访问,加速下载

GitHub 镜像,github 加速

  1. // ==UserScript==
  2. // @icon https://github.githubassets.com/favicon.ico
  3. // @name Github 镜像访问,加速下载
  4. // @namespace https://github.com/jadezi/github-accelerator/
  5. // @version 1.0.0
  6. // @description GitHub 镜像,github 加速
  7. // @author LzSkyline
  8. // @license GPL License
  9. // @match *://github.com/*
  10. // @require https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js
  11. // @resource mycss https://gitee.com/jadezi/github-accelerator-css/raw/master/index.css
  12. // @grant GM_addStyle
  13. // @grant GM_setClipboard
  14. // @grant GM_getResourceText
  15. // ==/UserScript==
  16.  
  17. (function() {
  18. var clone = true;
  19. // var clone = false;
  20. var depth = false;
  21. // var depth = false;
  22. var mirror = false;
  23. // var mirror = false;
  24. var hide = true;
  25.  
  26. var location = window.location.href;
  27. var mirror_url1 = "https://" + "github.com.cnpmjs.org";
  28. var mirror_url2 = "https://" + "hub.fastgit.org";
  29. var mirror_url3 = "https://" + "github.wuyanzheshui.workers.dev";
  30. var download_url1 = "https://download.fastgit.org";
  31. var str1 = "";
  32.  
  33. if (clone) {
  34. str1 += "git clone ";
  35. if (depth) {
  36. str1 += "--depth=1 ";
  37. }
  38. }
  39.  
  40. var a = location.split("/");
  41. var str2 = "/" + a[3] + "/" + a[4] + ".git";
  42. var clone_utl1 = str1 + mirror_url1 + str2;
  43. var clone_utl2 = str1 + mirror_url2 + str2;
  44. var str3 = window.location.pathname;
  45. var web_url1 = mirror_url1 + str3;
  46. var web_url2 = mirror_url2 + str3;
  47. var web_url3 = mirror_url3 + str3;
  48. var info = `
  49. <div class="user-ment">
  50. <button class="btn btn-primary" type="button" id="mirror-btn">镜像网址</button>
  51. <div class="collapse multi-collapse" id="collapse">
  52. <div class="user-card user-card-body">
  53. <div class="user-alert user-alert-warning" style="display:none;" role="alert">clonedepth命令的插入可手动编辑代码关闭</div>
  54. <div class="user-alert user-alert-danger" style="display:none;color: #721c24;background-color: #f8d7da;border-color: #f5c6cb;" role="alert">镜像地址请不要登陆自己的账户,造成损失本人概不负责</div>
  55. <div class="user-input-group user-mb-3">
  56. <div class="user-input-group-prepend"><span class="user-input-group-text" id="inputGroup-sizing-default">快速克隆1:</span></div>
  57. <input id="clone_case_1" type="text" value="${clone_utl1}" data-autoselect="" class="user-form-control" aria-label="将此存储库克隆到 ${clone_utl1}" readonly aria-describedby="inputGroup-sizing-default">
  58. <div class="user-input-group-append">
  59. <button class="btn btn-outline-secondary" type="button" id="button-copy1" data-container="body" data-toggle="popover" data-placement="bottom" data-content="复制成功">复制</button>
  60. </div>
  61. <button class="btn btn-outline-secondary" type="button" id="quickViewOne" href="${web_url1}" class="btn">快速浏览1</button>
  62. </div>
  63. <div class="user-input-group user-mb-3">
  64. <div class="user-input-group-prepend">
  65. <span class="user-input-group-text" id="inputGroup-sizing-default">快速克隆2:</span>
  66. </div>
  67. <input id="clone_case_2" type="text" value="${clone_utl2}" data-autoselect="" class="user-form-control" aria-label="将此存储库克隆到 ${clone_utl2}" readonly aria-describedby="inputGroup-sizing-default" >
  68. <div class="user-input-group-append">
  69. <button class="btn btn-outline-secondary" type="button" id="button-copy2" data-container="body" data-toggle="popover" data-placement="bottom" data-content="复制成功">复制</button>
  70. </div>
  71. <button class="btn btn-outline-secondary" type="button" id="quickViewOther" class="btn">快速浏览2</button>
  72. </div>
  73. <div class="user-input-group user-mb-3">
  74. <div class="user-input-group-prepend">
  75. <span class="user-input-group-text" id="inputGroup-sizing-default">快速克隆3:</span>
  76. </div>
  77. <input type="text" data-autoselect="" class="user-form-control" aria-describedby="inputGroup-sizing-default" value="git remote set-url origin ${'git@github.com:' + str2.replace('/', '' ,1)}" aria-label="" readonly="" >
  78. <button type="button" id="quickViewAnthor" class="btn">快速浏览3</button>
  79. </div>
  80. </div>
  81. </div>
  82. </div>`;
  83.  
  84. $(".repository-content").prepend(info);
  85. $(".Box.Box--condensed").each(function () {
  86. $(this).find(".d-flex.Box-body>a").each(function () {
  87. var href = $(this).attr("href");
  88. var url1 = download_url1 + href;
  89. var url2 = mirror_url3 + href;
  90. var div1 = `<div class="user_download" style="display: flex;justify-content: flex-end;flex-grow: 1;"><div><a style="padding:4px;" class="btn user-btn-link" href="${url1}" rel="nofollow">快速下载1</a></div><div><a style="padding:4px" class="btn user-btn-link" href="${url2}" rel="nofollow">快速下载2(推荐)</a></div></div>`
  91.  
  92. $(this).after(div1);
  93. });
  94. $(this).find(".d-block.Box-body>a").each(function () {
  95. var href = $(this).attr("href");
  96. var url1 = download_url1 + href;
  97. var url2 = mirror_url3 + href;
  98. var div1 = `<div class="user_download" style="display: flex;"><div><a style="padding:4px;" class="btn user-btn-link" href="${url1}" rel="nofollow">快速下载1</a></div><div><a style="padding:4px" class="btn user-btn-link" href="${url2}" rel="nofollow">快速下载2(推荐)</a></div></div>`
  99.  
  100. $(this).after(div1);
  101. });
  102. });
  103. $(".get-repo-modal.dropdown-menu ul li:last").each(function () {
  104. var url1 = mirror_url3 +"/"+a[3]+"/"+a[4]+ "/archive/master.zip";
  105. var span1 = `<li class="Box-row Box-row--hover-gray p-0"><a class="d-flex flex-items-center text-gray-dark text-bold no-underline p-3" rel="nofollow" href="${url1}">Fast Download ZIP</a></li>`;
  106.  
  107. $(this).after(span1);
  108. });
  109. // 复制按钮
  110. $("#button-copy1").on("click",function(){
  111. GM_setClipboard($("#clone_case_1").val())
  112. alert("复制成功")
  113. })
  114. $("#button-copy2").on("click",function(){
  115. GM_setClipboard($("#clone_case_2").val())
  116. alert("复制成功")
  117. })
  118. //页面跳转
  119. $("#quickViewOne").on("click",function(){
  120. window.location.href = web_url1
  121. });
  122. $("#quickViewOther").on("click",function(){
  123. window.location.href = web_url2
  124. })
  125. $("#quickViewAnthor").on("click",function(){
  126. window.location.href = web_url3
  127. })
  128. // 隐藏面板
  129. $("#mirror-btn").on("click", function () {
  130. if (!hide) {
  131. $("#collapse").hide();
  132. } else {
  133. $("#collapse").show();
  134. }
  135. hide = !hide;
  136. })
  137. function init(){
  138. if (!mirror) {
  139. $("#collapse").hide()
  140. }
  141. }
  142. // 初始化面板
  143. init()
  144. GM_addStyle(GM_getResourceText("mycss"));
  145. })();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址