Git / 版本控制

GitHub 链接转换

输入一个仓库或文件链接,先核对分支边界与文件路径,再复制对应地址。

GitHub 链接转换

GitHub URL 输入

解析字段与链接

链接仅在当前浏览器中处理,不向 GitHub 发起请求。

引用边界

填写 URL 中已有的分支、标签或提交,使用解码后的文字。此处只确定边界,不切换分支;仓库根链接请留空。

一次处理一条 URL,最多 8192 个 UTF-16 单元;ref 最多 1024 个。仅接受 HTTPS,不接受凭据和显式端口。

正在转换…

从代码审查里复制的地址通常打开的是文件页面,脚本却可能需要原始内容。GitHub 链接转换把所有者、仓库、引用和文件路径分别展示,便于判断地址里哪一段决定文件版本。这里的成功状态只说明结构解析完成,不代表远程文件已经过核验。

为什么使用 GitHub 链接转换

文件页面与原始内容并排核对

GitHub 链接转换同时展示仓库地址、文件页面和原始内容地址。从 Blob 页面或已有 Raw 地址进入,都能得到另一种形式,不必手工替换域名。仓库根地址仍然只是仓库,不会被擅自补成 main 分支下的 README 文件。

带浏览器外壳的文件视图与纯文档之间有双向箭头,表示同一文件的两种地址。

把斜杠分支的假设摆出来

feature/docs/guide.md 可能有多种切分方式。默认先显示 feature 这一假设;填写 feature/docs 后,文件路径才是 guide.md。填写不匹配的引用会报错,不会悄悄把地址改成另一条分支。

同一串彩色路径段有两种分组,选定的分支组合与后续文件路径分开。

先确认引用,再分享文件

01

区分文件与目录地址

可以输入文件页面、Raw 地址或仓库根地址。目录页面中的 tree 表示另一种资源,不能直接视为可下载文件。

  • 斜杠分支示例会同时预览 URL 与 ref 的替换内容。
02

只填写已经存在于地址中的引用

显式 ref 必须匹配 URL 尾部的完整前缀,并至少留下一段文件路径。带 refs/heads 或 refs/tags 的地址,填写命名空间后面的名称。

  • 这里填写 feature/docs,不要填写 feature%2Fdocs。
03

先看结果是否仍然有效

修改 URL 或引用后,旧结果立刻禁用导出。关闭自动模式后可以先编辑,再用 Ctrl/Cmd + Enter 执行。

  • 下载 JSON 保存的是字段报告,不会下载仓库中的文件内容。

同一个文件的不同地址

拆开 GitHub URL 解析结果

单独检查所有者、仓库、引用、路径和边界依据。完整的 40 位提交 ID 会被标识为提交形式;短哈希仍按未经核验的引用处理。需要 GitHub 永久链接时,应先在仓库里取得固定提交的地址。

生成两种文件链接

输入 Blob 页面、github.com/raw 地址或 raw.githubusercontent.com 地址,均可输出页面和原始内容两种形式。已有 heads 或 tags 命名空间会保留,GitHub Raw 链接与页面地址使用同一个引用和路径。

逐段编码,避免重复转义

每段先解码一次,再按目标路径编码。文件名中的空格变成 %20,百分号变成 %25;原本编码的问号和井号仍属于文件名,不会被错误地当成查询参数或片段起点。中文文件名也保留相同字符含义。

哪些事情不能从地址判断

离线无法证明文件可访问
GitHub 文件直链生成后,仍可能因为文件移动、私有权限或引用不存在而返回错误。本工具不查询默认分支、不获取提交列表、不执行鉴权,也不把分支地址称为固定版本;后续推送可以改变其内容。
新链接移除查询与片段
访问令牌、追踪参数、raw=true 和行号选择不会写入生成地址。页面会显示移除提示,原输入保留供对照。移除令牌不等于换成有效的公共链接;本工具也不会签发令牌或保留 Raw 内容中的行号高亮。
只处理明确支持的结构
仅接受两个官方主机上的单条 HTTPS 地址,不支持凭据、显式端口、SSH、Gist、自建 Enterprise、tree、发布或压缩包地址。空路径段、点段、非法转义和文件路径中的编码斜杠均拒绝,不通过自动规范化悄悄改变目标。

GitHub 链接转换常见问题

GitHub 文件怎样生成 Raw 链接?

在 GitHub 打开具体文件后,可点击 Raw 查看原始内容。也可以把该文件的 blob 页面地址放到这里,生成 Raw 主机形式。只有仓库根地址时缺少引用和文件名,工具不会自行选择 main、master 或某个说明文件。

怎样获得指向固定版本的 Raw 永久链接?

分支和标签都可能移动。要固定某次提交的文件,先取得包含完整提交 ID 的地址;GitHub 文件页的 Y 快捷键可切换到永久链接。本工具会保留你提供的提交 ID,但不会联网把当前分支换算成最新提交。

私有仓库的 Raw 链接能直接分享吗?

地址转换不会授予私有仓库读取权限,某些 Raw 地址依赖临时令牌。本工具从生成链接中移除查询令牌,并拒绝地址权限部分中的用户名和密码,所以输出并不是一个经过授权的分享机制。

为什么点击 Raw 后下载 CSV,而不是显示内容?

浏览器是显示还是下载,取决于 GitHub 返回的响应头和浏览器行为。改写链接不能强制文件类型、内联显示或响应头。这里的 JSON 下载仅保存本地解析报告,不请求远程 CSV,也不提供下载代理。

分支名包含斜杠时,为什么 URL 会被拆错?

Git 允许引用名称包含斜杠,字符串本身没有可靠的分支结束标记。请核对页面显示的第一段假设;若知道完整名称,就填写解码后的 ref。它必须匹配现有地址前缀,不能用来切换另一条分支。

还有其他 GitHub 链接问题?

检查另一条文件链接

使用 GitHub 链接转换核对解码后的字段与引用边界,然后复制适合当前用途的文件地址。需要保留这次切分的依据时,可以同时保存 JSON 报告。