Lovely forks
也可以通过 Opera Chrome-extension 插件在 Opera 浏览器上安装。
一个帮助你注意到 GitHub 项目值得关注的分支的插件。
有时在 GitHub 上,原作者会放弃项目,而开发工作会在某个分支上继续进行。然而,原始仓库很少更新以告知新来者这一事实。我经常浪费精力去提交拉取请求或安装旧的有 bug 的项目版本,而社区其实已经转移到了一个分支上。
更糟糕的是,旧项目通常有更高的搜索引擎流量和更多的星标数量,这使得分支更难被发现。这个插件试图通过在 GitHub 项目页面上的仓库名称下添加一个下标来解决这个问题,下标中包含指向最值得注意的分支(即星标数量最多且至少有一个星标的分支)的链接,如果存在这样的分支的话。
此外,如果分支比上游仓库更新,会在旁边显示一个火焰图标。这些被称为flamey forks,由 Mottie 提出。
使用场景
tipsy 插件自 2012 年以来就没有更新过,而有一个社区支持的分支合并了所有的 PR。然而,这个替代品只有 27 个星标,而原始项目有 1,888 个星标(在撰写本文时):
同样,slate 项目最后一次更新是在 2013 年,有大约 5,000 个星标。目前活跃的分支只有 185 个星标(在撰写本文时):
在某些情况下,可能会出现项目的新版本,比如国际化分支(Semantic-UI-pt-br 是 Semantic-UI 的不同语言版本):
或提供新功能(vim-fugitive 为 vim 提供 git 集成,vim-mercenary 提供 Mercurial 集成):
开发
在构建扩展之前,请安装以下内容:
项目提供了一个 Makefile
,可以为 Firefox 和 Chrome 生成最终文件。
make chrome
make firefox
构建过程是通过选择性地将源代码的部分复制到 ./.tmp
文件夹中,然后使用 zip
(对于 Chrome)或 web-ext
(对于 Firefox)再次打包。
最终的压缩包保存在 ./build
文件夹中。
测试
代码使用 StandardJS
风格检查器 来设置代码风格指南。
对于测试,可以通过访问 chrome://extensions 并点击 加载已解压的扩展程序 按钮将扩展程序加载到 Chrome 中。
然后导航到源代码根目录中由运行 make chrome
创建的 .tmp
文件夹并加载它。另一种方法是在根文件夹中运行 make manifest
,然后将源代码根目录作为未打包的扩展程序加载。除了在编辑 manifest.json.template
时,这将允许更简单的编辑-重新加载周期。
对于 Firefox,测试打包扩展程序的最简单方法是下载 未品牌化构建版本 或 开发者版本 并在那里加载扩展程序。否则,需要通过 Addon 服务器上的账户对扩展程序进行签名。转到 about:addons
,进入"扩展"选项卡,点击右上角的齿轮图标(设置)以加载已打包的扩展程序。
如果浏览器仍然提示包未签名,请转到 about:config
并将 xpinstall.signatures.required
设置为 false
。请注意,此设置仅在开发者版本和未品牌化版本的浏览器上生效,尽管它也会出现在发布版本的 about:config
页面中。
另请参阅
致谢
本项目使用的图标由 Freepik 和 Dave Gandy 制作,来自 www.flaticon.com,根据 CC BY 3.0 许可。
bfred-it 为改善扩展程序的外观和感觉做出了很大贡献。他还将扩展程序从 JavaScript 的 黑暗时代带入了太空时代。
来自 GitHub 的 izuzak 在帮助我修复错误和建议使用 compare API 来改进确定分支是否比上游仓库更新的启发式方法方面发挥了重要作用。
yfdyh000 添加了 用户脚本版本 并将扩展程序从 Firefox Addon SDK 转换为 Web-extensions。
Jackymancs4 修复了 一个错误 并重新启用了设置页面。
olso 添加了一个选项,用于设置当前仓库的最后一次提交应该有多少天的历史才显示分支。
Jorgen1040 帮助修复了多个"也被分支"消息出现的错误。
francislavoie 实现了 仓库跳过列表,以不在特定仓库上显示分支。