GitHub 是一个基于 Git 的代码托管和协作平台。它由汤姆・普雷斯顿 - 维尔纳等人于 2008 年推出,2018 年被微软以 75 亿美元收购。截至 2023 年 1 月 26 日,有超过 1 亿开发者使用该平台。GitHub 提供代码托管、版本控制、问题跟踪、代码审查等功能,还具备社交网络特性,开发者可以关注他人、参与项目讨论。此外,GitHub 还推出了企业版服务,2025 年 2 月宣布了其 AI 编程助手 Copilot 的一系列重大更新,进一步提升了开发者的工作效率。
在当今数字化时代,GitHub 已成为广大开发者不可或缺的强大工具。它就像是一个超级大的云端代码库,不仅为我们提供了便捷的代码托管服务,还搭建了一个全球开发者交流与协作的优质平台。在这个平台上,我们可以尽情探索和学习丰富的开源项目,与来自世界各地的开发者并肩合作,共同攻克难题。
然而,你真的把 GitHub 的潜力都挖掘出来了吗?今天,我就来和大家分享一些实用的 GitHub 使用技巧,让你能够更高效地利用这个强大的平台。
技巧一:设置SSH免密钥下载和上传(操作)Github仓库的代码
要实现 GitHub 的 SSH 免密钥登录,只需以下几个步骤:
-
生成 SSH 密钥对
打开终端,输入命令(邮箱替换为你的 GitHub 注册邮箱):
ssh-keygen -t ed25519 -C "your_email@example.com"
按回车默认保存路径(通常为
~/.ssh/id_ed25519
),无需设置密码(直接回车跳过),生成公私钥文件。 -
查看并复制公钥内容
执行命令查看公钥:
cat ~/.ssh/id_ed25519.pub
复制输出的全部内容(以
ssh-ed25519
开头,邮箱结尾)。 -
添加公钥到 GitHub
-
登录 GitHub,进入「Settings」→「SSH and GPG keys」→「New SSH key」。
-
在「Title」填一个标识(如设备名),「Key」框粘贴复制的公钥,点击「Add SSH key」。
-
-
验证配置
终端输入:
ssh -T git@github.com
首次连接需确认,输入
yes
后,若看到类似Hi username! You've successfully authenticated...
提示,说明配置成功。
此后,通过 SSH 地址(如 git@github.com:username/repo.git
)操作仓库时,无需重复输入密码。
技巧二:提升Github网页访问速度
1、修改Hosts文件
打开Hosts文件:
Windows:C:\Windows\System32\drivers\etc\hosts
Mac/Linux:/etc/hosts
末尾添加以下内容:
# GitHub DNS
140.82.113.3 github.com
185.199.108.153 assets-cdn.github.com
199.232.69.194 github.global.ssl.fastly.net
2、镜像加速
直接在浏览器地址栏把github.com替换成这些镜像域名
3、使用FastGitHub工具
FastGitHub是一个开源项目,旨在解决GitHub访问速度慢的问题,通过优化IP选择和搭建本地DNS服务来改善用户体验。这个项目专注于解决GitHub访问慢、用户头像加载不出来、releases无法上传下载以及git操作失败等问题。其原理在于获取GitHub的大量IP数据,通过程序筛选出可用且访问速度最佳的IP,然后搭建一个本地DNS服务,在解析GitHub域名时自动返回最佳IP。经过长时间的开发与优化,终于推出了这款软件。它不仅合法、可靠、稳定,还是完全免费的,无需服务器资源。
4、利用Gitee码云同步仓库代码
利用码云进行下载
利用国内代码托管平台码云进行下载,码云新建仓库同步Github镜像
技巧四:精准找项目,过滤过时项目
按照时间过滤
盲搜的时候你搜到的项目,有可能是已经没有人维护的老项目,年久失修,那么可以加入时间的条件搜索,比如输入 redis pushed:>2024-01-01;
使用stars:>=1000 forks:>=500语法快速筛选热门项目,支持范围查询如stars:500..2000
技巧五:探索 trending 排行榜
紧跟技术潮流对开发者来说至关重要,GitHub 的 trending 排行榜就是我们洞察热门技术趋势的绝佳窗口。通过它,我们可以了解到不同类型语言的每日热门项目,及时掌握行业动态。
要查看不同类型语言的每日 trending 排行榜,操作非常简单。打开 GitHub 官网,点击页面上方的 "Explore",在下拉菜单中选择 "Trending" ,进入 trending 页面。在这个页面中,默认展示的是所有语言的热门项目。如果你想查看特定语言的热门项目,只需在页面左上角的搜索框中输入你感兴趣的语言名称,比如 "Python""Java""JavaScript" 等,然后回车,页面就会展示该语言的每日 trending 排行榜。
在 trending 排行榜中,你可以看到每个项目的名称、简介、仓库链接以及主要使用的编程语言等信息 。排行榜会根据项目的热度进行排序,热度越高的项目排名越靠前。这里的热度通常是根据项目在一定时间内获得的 star 数、fork 数、提交数等数据综合计算得出的。
通过关注 trending 排行榜,我们能及时发现一些新兴的热门技术和优秀的开源项目 。比如,前阵子人工智能领域发展火热,在 trending 排行榜上就出现了很多与人工智能相关的 Python 项目,其中一些优秀的项目,像基于 Transformer 架构的自然语言处理项目,为开发者提供了强大的预训练模型和工具,吸引了众多开发者的关注和学习。再比如,随着前端技术的不断发展,一些创新的 JavaScript 框架和库也频繁出现在 trending 排行榜上,这些项目往往带来了新的开发理念和技术方案,对前端开发产生了深远的影响。
所以,建议大家养成定期查看 trending 排行榜的习惯,这不仅能拓宽我们的技术视野,还能为我们的项目开发和技术学习提供很多灵感和方向 。
技巧六:精准分享代码片段
在开发过程中,我们经常会遇到需要与他人分享关键代码的情况。这时候,精准分享代码片段就显得尤为重要。通过在 GitHub 链接后添加行号,我们可以轻松实现这一目的。
如果只想分享单个关键代码行,只需在 URL 后面加上#L行号 。比如,你想分享https://github.com/your-repo/your-file.js文件中的第 50 行代码,那么你只需将链接改为https://github.com/your-repo/your-file.js#L50 。当其他人点击这个链接时,就会直接跳转到该文件的第 50 行,非常方便。
要是想分享多行代码段,可以在 URL 后面加上#L开始行号-L结束行号 。假设你要分享https://github.com/your-repo/your-file.js文件中从第 30 行到第 40 行的代码段,链接就可以写成https://github.com/your-repo/your-file.js#L30-L40 。这样,点击链接的人不仅会跳转到第 30 行,而且第 30 行到第 40 行的代码会被高亮显示,让关键代码一目了然。
操作演示如下:
打开文件:在 GitHub 仓库中找到包含你要分享代码的文件,点击打开该文件。
获取单行链接:如果是分享单行代码,将鼠标移动到该行代码的行号处,点击行号,此时浏览器地址栏中的 URL 会自动添加#L行号 ,复制这个完整的 URL 即可分享。
获取多行链接:若分享多行代码,先点击起始行的行号,然后按住Shift键,再点击结束行的行号,这时浏览器地址栏中的 URL 会自动更新为#L开始行号-L结束行号 ,复制这个 URL 就能将多行代码精准分享给他人。
技巧七:自动关闭 issues
在项目开发过程中,及时关闭已解决的 issues 可以让项目管理更加清晰有序。GitHub 提供了一个便捷的功能,通过在提交 msg 中使用特定关键字,就可以实现自动关闭 issues 。
当有人提交了一个 issue,比如https://github.com/your-repo/issues/123 ,你在主干上修改完相关代码后,提交 msg 时使用以下关键字,就能自动关闭这个 issue:
close/closes/closed:"close""closes""closed" 这三个词都和关闭动作相关,只是时态有所不同,用在提交信息里,都能让 GitHub 明白你要关闭对应的 issue。比如你写 "close #123""closes issue 123""closed the problem in #123",GitHub 都能准确识别并关闭指定的 issue。
fix/fixes/fixed:"fix""fixes""fixed" 这三个词都和解决问题相关,也能用来关闭 issue。像 "fix the bug in #123""fixes the issue about login #123""the problem has been fixed, close #123" 这样的提交信息,GitHub 会根据这些关键字找到对应的 issue 并关闭。
resolve/resolves/resolved:"resolve""resolves""resolved" 这三个词和解决、处理问题有关,同样可以实现自动关闭 issue 的功能。例如 "resolve the conflict in #123""resolves the compatibility issue #123""the problem has been resolved, close #123" ,GitHub 会根据这些信息执行关闭操作。
以 "fix" 关键字为例,操作流程如下:
修改代码:在本地仓库中对与该 issue 相关的代码进行修改。
提交代码:修改完成后,进行代码提交。在提交 msg 中,输入 "fix 具体 issues 链接" 。比如,你要关闭https://github.com/your-repo/issues/123这个 issue,那么在提交 msg 中输入 "fix https://github.com/your-repo/issues/123" 。
查看结果:提交成功后,刷新 issues 页面,你会发现对应的 issue 已经自动关闭,并且在 issue 的历史记录中可以看到关闭的原因是因为你的这次提交。
技巧八:HTML 嵌入展示
在网页中展示 GitHub 项目可以让更多人方便地了解和使用你的项目。通过 HTML 嵌入方式,我们可以轻松实现这一目标。
以嵌入 GitHub 项目的 Watch 按钮为例,你只需要使用以下代码:
将代码中的 "你的用户名" 和 "你的仓库名" 替换为你实际的 GitHub 用户名和仓库名,然后将这段代码添加到你的网页 HTML 文件中。在网页中展示的效果就像这样:Watch 按钮展示 。
除了 Watch 按钮,还可以嵌入 Fork 按钮、Star 按钮等,只需修改代码中的 "type" 参数即可 。比如,嵌入 Fork 按钮的代码为:
展示效果如下:Fork 按钮展示 。
技巧九:设置项目语言
GitHub 会根据项目中文件的情况自动识别项目语言,不过有时候会出现识别不准确的情况。比如,你的项目明明主要是用 Python 开发的,但由于项目中包含一些配置文件或少量其他语言的文件,GitHub 可能会将其识别为其他语言 。
这时,我们可以通过在项目根目录创建.gitattributes 文件来设置项目语言。例如,如果你的项目主要是 Python 项目,但有一些.yaml 和.xml 文件影响了语言识别,你可以在.gitattributes 文件中添加以下内容:
*.yaml linguist-language=Python
*.xml linguist-language=Python
这样,GitHub 就会按照你的设置来识别项目语言,将这些文件视为 Python 项目的一部分,从而更准确地展示项目语言。
操作步骤如下:
创建文件:在项目根目录下,使用文本编辑器创建一个名为.gitattributes 的文件(如果是在 Windows 系统下,可能需要先创建一个普通文本文件,然后重命名为.gitattributes)。
添加内容:根据项目中文件的实际情况,在.gitattributes 文件中添加相应的语言设置规则。
提交文件:将.gitattributes 文件添加到本地仓库,并推送到 GitHub 远程仓库。提交后,GitHub 会重新分析项目语言,你会发现项目语言已经按照你的设置正确显示了。
技巧十:查看项目访问数据
在 GitHub 项目中,查看访问数据能让我们了解项目的受欢迎程度和用户行为,从而更好地优化项目。操作方法很简单,在自己的项目下,点击 "Insights",然后再点击 "Traffic" ,就能看到详细的数据了。
这里面有 "Referring sites" 和 "Popular content" 的详细数据和排名 。"Referring sites" 表示大家都是从什么网站来到你的项目的 。通过分析这个数据,我们可以了解到项目的流量来源,比如是通过搜索引擎、技术论坛,还是其他开发者的推荐等。如果发现某个网站带来的流量特别多,我们就可以考虑在这个网站上加大推广力度,或者与该网站建立更紧密的合作,以吸引更多用户。
"Popular content" 则表示大家经常看你项目的哪些文件 。知道这一点后,我们就能清楚项目中哪些部分最受关注。假如项目中的某个核心算法文件被频繁查看,这可能意味着这个算法很有价值,值得进一步优化和完善;又或者某个文档被大量访问,说明用户对这部分内容的需求很大,我们可以考虑进一步丰富和细化该文档,以满足用户的需求。
技巧十一:一键搭建前端网站
你是否曾为将前端项目快速部署成一个可访问的网站而烦恼?GitHub Pages 就是你的救星!它能让你轻松将 GitHub 上的项目变成一个前端网站。
以往,我们常用的做法是建立一个 gh - pages 分支,通过 Setting 里的设置的 GitHub Pages 模块来自动创建该项目的网站。但这里有个痛点,当 master 分支有变更时,常常需要手动同步到 gh - pages 分支,尤其是对于纯前端项目来说,这个过程繁琐又容易出错。不过别担心,Github 官方似乎察觉到了这个问题,现在推出了一个新功能 ------ 可以直接将 master 分支设置为网站 。
操作步骤如下:
进入 Settings 设置:找到你的项目仓库,点击进入仓库页面,然后点击右上角的 "Settings" 按钮,进入仓库设置页面。
选择对应分支:在设置页面左侧的菜单中,找到 "Pages" 选项。在 "Source" 这一项中,选择 "main" 分支(如果你的仓库使用的是 master 分支,就选择 master 分支)。选择完之后,你的 master 分支就自动变成了网站,master 分支上的所有提交都会自动更新到网站上。
选择对应主题:在 "Pages" 设置页面中,你还可以选择网站的主题。GitHub 提供了一些默认的主题供你选择,你可以根据自己的喜好挑选一个合适的主题,让你的网站看起来更加美观。
等待部署成功:完成上述设置后,GitHub 会开始部署你的网站,稍等片刻,当看到页面显示部署成功的提示时,便可以使用username.github.io/仓库名称的格式进行访问了。
总结与互动
如果你在使用 GitHub 的过程中还有其他独特的技巧,或者在实践这些技巧时遇到了问题,欢迎在评论区留言分享或提问。让我们一起交流,共同探索 GitHub 的更多可能性,让这个强大的工具更好地为我们的开发工作服务。