使用 GitHub Desktop 完成 first-contributions 的第一次开源贡献:fork → clone → edit → PR 全流程图形化指南
【免费下载链接】first-contributions🚀✨ Help beginners to contribute to open source projects项目地址: https://gitcode.com/gh_mirrors/fi/first-contributions
初次参与开源贡献时,最大的障碍往往不是技术本身,而是“不知道从哪里开始、害怕出错”。first-contributions 项目正是为解决这一痛点而存在——它以 README.md 为主线,在 docs/gui-tool-tutorials 目录下为不同工具提供了分步教程,本文讲解的便是其中面向不熟悉命令行读者的GitHub Desktop 图形化版本(对应文档 github-desktop-tutorial.sw.md)。读完本文,你将完全掌握贡献者最常遇到的fork -> clone -> edit -> commit -> push -> pull request标准工作流,并能在不接触命令行的情况下完成你的第一次真实 Pull Request。
为什么选择 GitHub Desktop 完成首次贡献
对于刚接触 Git 与 GitHub 的新手,命令行存在一定的学习门槛。GitHub Desktop 将 Git 的核心操作封装为图形界面,让“分支切换”“提交”“推送”等概念变得可视化、可点击。这种“边做边学”的方式恰好契合 first-contributions 项目的理念:与其只阅读文章和观看教程,不如在不会搞砸任何东西的前提下真正动手完成一次贡献。项目的辅助说明文档也印证了这一点——README.md 明确写道,如果对命令行不熟悉,可以转向 GUI 工具教程。
在本教程中,你将以 GitHub Desktop 为操作载体,完成对 first-contributions 仓库的一次真实贡献:把自己的名字添加到 Contributors.md 文件中(该文件目前已有数千条贡献者记录,这正是这套工作流被大量新手成功实践过的证据),并通过 Pull Request 提交给项目维护者合并。
前提:如果尚未安装 GitHub Desktop,请先前往 desktop.github.com 下载安装;若你正在使用 1.0 之前的旧版本,界面布局与本教程存在差异,应参考旧版教程 github-desktop-old-version-tutorial.md。
第一步:Fork(复刻)仓库
打开 first-contributions 仓库页面,点击页面右上角的Fork按钮。这一步会在你自己的 GitHub 账号下生成该仓库的一份完整副本,后续所有修改都在这个副本上进行,不会影响原仓库。
Fork 的意义在于:开源协作中,普通贡献者没有直接向他人仓库写代码的权限,而通过 Fork 得到的“个人副本”则完全归你所有,你可以任意修改、推送,最后再通过 Pull Request 请求原仓库采纳你的改动。这也是整个工作流的第一步。
第二步:Clone(克隆)仓库到本地
现在需要把 GitHub 上的 fork 副本下载到你的电脑上。
关键提醒:不要克隆原仓库,务必进入你自己账号下的 fork 仓库再执行克隆。
在 fork 仓库页面点击Code按钮,选择Open in GitHub Desktop。系统会弹出确认窗口,点击Open GitHubDesktop.exe以唤起本机已安装的 GitHub Desktop 程序。
随后 GitHub Desktop 会弹出Clone a repository对话框,确认仓库信息无误后点击Clone,等待仓库内容下载到本地。
克隆完成后,程序还会弹出一个询问“你打算如何使用这个 fork?”的对话框(How are you planning to use this fork?),此时应选择To contribute to the parent project(向父项目贡献),并点击Continue。这一步非常关键:它告诉 GitHub Desktop 你的目标是向原项目提交贡献,程序会自动为你维护与上游的关联关系。
至此,first-contributions 仓库的内容已经完整复制到了你的电脑上。对照 CLI 教程 README.md 中的git clone命令,可以更好地理解这一步的底层本质:克隆就是把远程仓库的完整历史与文件复制到本地工作区。
第三步:创建功能分支
永远不要在默认分支(main/master)上直接修改并提交——这是 Git 协作的基本素养。正确的做法是为每次改动创建一个独立的分支。
在 GitHub Desktop 顶部点击Current branch图标,选择New branch,将分支命名为<add-your-name>格式,例如add-james-smith(把你的名字代入其中,便于维护者一眼看出这个分支的用途),然后点击Create branch确认创建。
创建分支后,GitHub Desktop 会立即切换到新分支上,之后的所有修改都会落在该分支内,与主分支完全隔离。这与 CLI 教程中git switch -c your-new-branch-name(README.md)的作用完全一致,只是变成了可视化操作。
第四步:修改文件并提交(Commit)
进入 GitHub Desktop 的History(历史)标签页,找到仓库根目录下的 Contributors.md 文件,右键选择在文本编辑器中打开。滚动到文件末尾,按照既有条目的格式追加你的名字,然后保存文件。格式如下(以 James Smith 为例):
[James Smith](https://github.com/jamessmith)即使用 Markdown 链接语法你的名字。保存后回到 GitHub Desktop,你会立即看到 Contributors.md 显示为已修改状态——这就是 Git 工作区状态的可视化呈现,等价于 CLI 中git status的输出(参见 README.md 对git add与git commit的说明)。
接下来提交这些改动:
- 在界面下方的Summary(摘要)字段中填写提交信息:
Add <your-name> to Contributors list,并把<your-name>替换为你的真实名字。 - 点击Commit to add-your-name按钮(按钮文本会带上你的分支名)。
提交完成后,界面底部会显示这条新提交的记录。提交(Commit)本质上是为当前改动拍一张“快照”,并附上说明文字,它只发生在本地,尚未同步到 GitHub。
第五步:推送(Push/Publish)到 GitHub
提交只存在于本地,还需要推送到你 fork 的远程仓库。如果这是你首次使用 GitHub Desktop,需要先登录:点击File -> Options,在 Accounts 中登录 GitHub.com,输入你的用户名和密码完成授权。
登录完成后,点击界面右上角的Publish按钮,将本地分支及其提交推送到你的 fork 仓库。这一步等价于 CLI 中的git push -u origin your-branch-name(README.md),-u参数会建立本地分支与远程分支的追踪关系,而 GitHub Desktop 的 Publish 按钮做了同样的工作。
提示:如果后续分支需要同步上游更新,GitHub Desktop 也提供 Fetch/Pull 按钮,相关高级场景可参考 keeping-your-fork-synced-with-this-repository.zh-cn.md 等补充资料。
第六步:提交 Pull Request 供审查
推送成功后,回到你的 GitHub fork 仓库页面,会看到一个醒目的Compare & pull request按钮,点击它进入 Pull Request 创建页。
在这个页面,GitHub 会展示你的分支与上游原仓库的差异对比,确认改动无误后,点击Submit pull request(提交拉取请求)即可。你的名字和修改就会被正式提交给 first-contributions 项目维护者审查。
Pull Request 是开源协作的“交作业”环节:你把 fork 仓库分支上的改动请求原仓库合并。一旦维护者审查通过并合并,你会收到邮件通知,你的名字就会出现在 Contributors.md 中,成为该项目的正式贡献者。
收尾:你已掌握的贡献者工作流
恭喜!至此你完整走通了贡献者最常遇到的fork -> clone -> edit -> commit -> push -> PR标准工作流。这套流程不仅在 first-contributions 项目中使用,也是你今后参与任何 GitHub 开源项目的通用技能。
如果想进一步加深理解,可以:
- 对照命令行版本 README.md,理解每个图形化操作背后的 Git 命令;
- 学习更多高级 Git 技巧,如修改提交(amending-a-commit.zh-cn.md)、合并冲突解决(resolving-merge-conflicts.zh-cn.md)、保持 fork 与上游同步(keeping-your-fork-synced-with-this-repository.zh-cn.md),这些资料统一索引在 additional-material.md;
- 若想尝试其他图形化工具(VS Code、GitKraken、SourceTree 等),可参考 docs/gui-tool-tutorials 目录下的对应教程。
【免费下载链接】first-contributions🚀✨ Help beginners to contribute to open source projects项目地址: https://gitcode.com/gh_mirrors/fi/first-contributions
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考