使用 Sublime Merge 完成首次开源贡献:first-contributions 实战指南
使用 Sublime Merge 完成首次开源贡献first-contributions 实战指南【免费下载链接】first-contributions✨ Help beginners to contribute to open source projects项目地址: https://gitcode.com/gh_mirrors/fi/first-contributions导读本指南以 GitHub 加速计划镜像仓库first-contributions为演练场面向完全没有命令行经验的新手完整演示如何用Sublime Merge这款图形化 Git 客户端走通开源贡献的标准流程fork → clone → 编辑 → commit → push → pull request。读完本文你将掌握 Sublime Merge 中克隆、建分支、暂存stage、提交、推送与发起 PR 的全部操作细节并了解 PR 合并后的分支清理与仓库同步方法从而自信地参与任何开源项目。为什么选择 Sublime Merge 完成第一次贡献第一次做某件事总是困难的尤其是协作开发犯错是常态。开源的本质是协作与共同工作而本项目的目标正是让新手在“不会搞砸”的前提下真实地走完一次贡献流程——阅读文章和观看教程固然有帮助但没有什么比亲手完成一次真实操作更有效。Sublime Merge 是 Sublime Text 同门出品的图形化 Git 客户端它把仓库状态、分支、暂存区、提交历史都可视化地呈现在界面上适合不熟悉命令行的开发者。本教程对应的英文原版位于 docs/gui-tool-tutorials/sublime-merge-tutorial.md印地语Hindi译文即本文依据的 docs/gui-tool-tutorials/translations/Hindi/sublime-merge-tutorial.hi.md仓库根目录的 README.md 则提供了同一流程的命令行版本可供对照学习。准备环境请先下载并安装 Sublime Merge支持 Windows / macOS / Linux然后打开它。整个流程不需要你手动输入任何 Git 命令全部通过菜单和点击完成。第一步Fork 本仓库打开 first-contributions 仓库主页点击页面顶部的Fork分支/复刻按钮。Fork 操作会在你自己的 GitHub 账户下生成一份该仓库的完整副本。这一步的意义在于绝大多数顶级开源仓库只有少数核心维护者能直接推送代码其他贡献者必须先把仓库复制到自己的账户即 fork在副本上修改再通过 Pull Request 请求维护者把改动合并回去。从源码结构看本仓库的Contributors.md见 Contributors.md是一份持续累积的贡献者名单目前已包含数千条来自全球开发者的记录这正是新手演练的“目标文件”。第二步用 Sublime Merge 克隆仓库Fork 完成后你需要把自己账户里的这份副本下载到本地电脑才能开始修改。操作如下在你的 GitHub 页面上打开刚才 fork 出来的仓库点击页面上的Code / Clone按钮再点击复制到剪贴板图标复制仓库 URL在 Sublime Merge 中进入菜单File → Clone Repository文件 → 克隆仓库把复制的 URL 粘贴到对话框中仓库名称Repository Name可以自定义也可以留空使用默认名选择仓库保存到本地的目录Directory确认路径无误后点击Clone按钮。⚠️ 新手最容易犯的错误经常有人把被 fork 的那个原始仓库当成自己的仓库克隆下来而不是克隆自己 fork 的副本。请务必检查浏览器地址栏确认 URL 指向的是你的用户名/first-contributions而不是firstcontributions/first-contributions。克隆完成后Sublime Merge 会以图形化方式展示该仓库的提交历史、分支和文件状态相当于命令行中git clone的图形化结果。第三步创建自己的功能分支Git 的分支机制允许你在不影响主干main/master的情况下独立工作。请按以下任意一种方式创建新分支在左侧Branches分支面板上右键 →Create Branch创建分支或通过顶部菜单Repository → Create Branch仓库 → 创建分支。将分支命名为add-your-name的格式例如add-anna-sophia把名字换成你自己的。之所以建议这种命名是因为分支只服务于“添加我的名字”这一单一目的使命明确、生命周期短便于后续清理。这对应命令行中的git switch -c add-alonzo-church参见 README.md。创建成功后Sublime Merge 界面会显示当前所在分支后续的提交都将落在这个新分支上。第四步修改 Contributors.md 并提交4.1 编辑文件用任意文本编辑器打开仓库根目录的Contributors.md把你的名字建议同时附上个人主页或 GitHub 链接可参考文件现有条目格式添加进去然后保存。注意不要把名字加在文件开头或结尾插入在任意中间位置即可。保存后切回 Sublime Merge你会发现界面提示发生了变化——这正是 Git 检测到工作区有未提交改动的表现。4.2 理解暂存Staging并提交在 Sublime Merge 中顶部会显示最新的一条提交记录名称为“x unstaged files”x 个未暂存文件。接下来的操作逻辑是选中这条最新提交查看有哪些文件被修改决定哪些改动要进入本次提交勾选文件前的复选框即可将文件暂存stage给提交写一条描述性信息例如Add your-name to Contributors list把your-name换成你的名字逐文件暂存或直接点击stage all全部暂存按钮。为什么要暂存暂存的意义在于精确告诉 Git 本次提交要关联哪些文件改动——你可以把多个文件的修改分批整理成多个语义清晰的提交而不是一股脑全部提交。Sublime Merge 把这个底层机制可视化成了复选框。进阶技巧你可以在暂存区Staged和未暂存区Unstaged中选中文件甚至单个改动块hunk按空格键Space bar即可在两者之间快速移动——这对应命令行里的git add/git reset操作非常适合只想提交部分改动的场景。撤销操作如果改变主意可以取消暂存unstage也可以**直接丢弃discard**全部改动。⚠️警告正如 “discard”丢弃一词所暗示的这是一个破坏性操作会彻底放弃当前仓库中未提交的改动且不可恢复。请仅在确定不想要任何当前改动时使用。完成暂存并填好提交信息后点击界面左上角的Commit按钮即可生成本次提交。此时你已经在本地完成了一次符合 Git 规范的提交对应命令行的git add Contributors.mdgit commit -m ...。如果你是第一次在 Git 中提交可能会遇到 Git 询问身份信息的提示需要先配置user.name和user.email详见 configuring-git.md。第五步把改动推送到 GitHub提交只存在于本地要让维护者看到必须推送到你 fork 的远程仓库。操作如下进入菜单Repository → Push仓库 → 推送或点击界面右上角朝上的小箭头图标。Sublime Merge 会弹出登录窗口使用你的 GitHub 用户名和密码或令牌登录。随后选择推送目标如果想改动直接反映在 main 分支上就推送到origin分支否则选择你想要推送的目标分支本教程中应选择你创建的add-your-name分支。推送成功后你的 fork 仓库就包含了本次提交。这一步对应命令行中的git push -u origin your-branch-name。若推送时遇到身份认证错误可参考 README.md 中的排障说明如改用 SSH 远程地址。第六步提交 Pull Request 请求评审现在回到 GitHub打开你的 fork 仓库页面会看到一个Compare pull request比较并创建拉取请求按钮点击它然后点击Submit pull request提交拉取请求确认。Pull RequestPR的本质是请求维护者把你分支上的改动合并进原仓库。提交后维护者会审阅你的改动一旦合并你会收到邮件通知你的名字将正式出现在 Contributors.md 的贡献者名单中——恭喜你完成了标准的fork → clone → edit → PR工作流第七步PR 合并后的收尾清理分支与保持同步贡献完成后还有两个值得养成的良好习惯对应仓库的进阶文档1. 删除已完成使命的分支。add-your-name分支的使命已经结束可以清理在本地切换到 main 分支并把改动合并回 main然后删除本地分支确认 PR 已被合并后再删除 fork 上的远程分支避免仓库越来越乱。具体命令与步骤见 removing-branch-from-your-repository.md。2. 保持 fork 与原仓库同步。开源项目会不断有新提交你的 fork 会逐渐落后。开源协作中典型的“三角工作流”是原仓库upstream→ 你的 forkorigin→ 本地仓库。定期把 upstream 的最新改动拉取并合并到本地 main再推送到你的 fork即可保持同步相关操作详见 keeping-your-fork-synced-with-this-repository.md。延伸阅读与下一步本仓库还提供了更多进阶 Git 场景修改提交、解决合并冲突、压缩提交、撤销提交等的中文指南见 additional-material.md不想用图形界面可对照命令行版本 README.md 的完整流程想尝试其他图形化工具仓库同样收录了 GitHub Desktop、GitKraken、VS Code、Sourcetree 等工具的教程。现在你可以打开 first-contributions 仓库用 Sublime Merge 亲自走完这一整套流程迈出开源贡献的第一步。【免费下载链接】first-contributions✨ Help beginners to contribute to open source projects项目地址: https://gitcode.com/gh_mirrors/fi/first-contributions创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考