ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

first-contributions 尼泊尔语高级 Git 指南解读:12 个进阶技巧与仓库实践导航

first-contributions 尼泊尔语高级 Git 指南解读:12 个进阶技巧与仓库实践导航 first-contributions 尼泊尔语高级 Git 指南解读12 个进阶技巧与仓库实践导航【免费下载链接】first-contributions✨ Help beginners to contribute to open source projects项目地址: https://gitcode.com/gh_mirrors/fi/first-contributions本文围绕 first-contributions 仓库中的尼泊尔语翻译文档 additional-material.np.md 展开它是一份面向尼泊尔语初学者的「高级 Git 技术补充材料」索引页假设读者已经完成基础教程再以条目形式汇总了 12 个进阶主题包括修改提交、配置 Git、保持 Fork 同步、移动/删除提交与分支、解决合并冲突、回退与压缩提交、撤销本地提交、创建 .gitignore 等。读完本文你将系统掌握这套进阶技巧清单的完整脉络、每个主题的适用场景与核心命令并能定位仓库中对应的英文母版与尼泊尔语翻译文档随时按需深入查阅。文档定位基础教程之后的第一站docs/additional-material/translations/Nepali/additional-material.np.md是尼泊尔语翻译目录中的总索引页对应的英文母版是 additional-material.md。文档开篇就明确了前提假设读者已经完成基础教程本页提供的是关于高级 Git 技巧的补充信息。该页与 first-contributions 项目的整体架构呼应仓库的 docs/translations 目录收录了 100 多种语言的 README 翻译而 docs/additional-material/translations 目录则在为这些语言逐步补齐高级 Git 技巧文档。目前尼泊尔语Nepali目录下已落地两份子文档其余条目仍在翻译推进中英文母版均可作为对照阅读。一、修改最近一次提交Amending a Commit索引页简介用于修正你已作出的提交。尼泊尔语翻译版已存在amending-a-commit.np.md其内容与英文母版 amending-a-commit.md 对应。场景一推送后修改提交信息不打开编辑器如果提交已推送到远程仓库才发现提交信息有拼写错误或忘记在最近一次提交中加入某行改动可以用--amend重写最近一次提交git commit --amend -m 你的新提交信息 git push origin branch-name要点仅执行git commit --amend不加-m会打开文本编辑器让你修改提交信息加上-m选项则可以跳过编辑器直接以命令行参数替换提交信息。场景二修改某个具体提交合并进同一提交假设提交历史如下而你在a5da0d modified botfile中漏加了一个单词g56123f create file botfile a2235d updated contributor.md a5da0d modified botfile有两种处理方式新建一个包含该改动的提交历史会多出一条b0ca8fg56123f create file botfile a2235d updated contributor.md a5da0d modified botfile b0ca8f added single word to botfile修改amenda5da0d提交本身把改动并入同一条提交后一次性推送。对于小改动这是更优选择。方式二的完整步骤# 1. 修改文件例如把遗漏的单词补回 botfile # 2. 加入暂存区 git add filename # 3. 修改上一条提交会打开编辑器可保留或修改提交信息 git commit --amend # 4. 推送 git push origin branch-name这样两次改动就合并进同一条提交中。场景三修改已推送远程的提交强制推送若目标提交已经推送到远程--amend会生成一条新提交替换旧提交导致本地历史与远程分叉。要改写远程历史需要在推送时使用强制推送git add your changed files git commit --amend -m 你的新提交信息 git push --force警告强制推送会覆盖并丢弃远程上的改动包括其他协作者在此期间推送的内容。更安全的做法是用git push --force-with-lease它会在不打算覆盖他人改动的前提下拒绝覆盖避免误伤队友的提交。二、配置 Git 环境Configuring Git索引页简介用于配置你的用户信息与 Git 中的其他选项。尼泊尔语翻译版已存在configuring-git.np.md英文母版为 configuring-git.md。为什么必须配置身份第一次执行git commit时Git 会提示$ git commit *** Please tell me who you are. Run git config --global user.email youexample.com git config --global user.name Your Name to set your accounts default identity. Omit --global to set the identity only in this repository.Git 在创建提交时必须知道「你是谁」——在多人协作时这决定了提交记录里能追溯到「谁在什么时候改了什么」。因此 Git 的设计让提交与姓名、邮箱绑定。三种配置作用域与优先级配置方式语法作用范围适用场景全局配置git config --global 变量名 值本机所有仓库个人默认身份推荐大多数场景仓库配置git config 变量名 值省略--global仅当前仓库如用公司邮箱提交某个工作项目命令行配置git -c 变量1值 -c 变量2值 命令仅当前这一条命令临时身份一次性生效用户信息示例# 全局 git config --global user.email youexample.com git config --global user.name Your Name # 仅当前仓库例如用工作邮箱 git config user.email youalternate.com git config user.name Your Name # 仅本次命令 git -c user.nameYour Name -c user.emailyouexample.com commit -m Your commit message优先级command-line repository global。即同一变量若在命令行与全局同时配置命令行的值会生效。常用进阶配置项除用户信息外还有不少实用配置core.editor—— 指定撰写提交信息等场景使用的文本编辑器commit.template—— 指定系统上一个文件作为初始提交模板color.ui—— 布尔值控制 Git 输出是否使用颜色。三、保持 Fork 与上游仓库同步Keeping Your Fork Synced索引页简介用于让 fork 出来的仓库与源仓库保持同步当你发现自己的 fork 缺少上游分支的新改动时就按此步骤操作。英文母版见 keeping-your-fork-synced-with-this-repository.md。三角工作流Triangle Workflow完整同步流程涉及三个仓库公共主仓库github.com/firstcontributions/first-contributions.git、你在 GitHub 上的 fork、以及你本地的克隆仓库。这种「上游 我的 fork 本地」的协作模式是开源项目的典型形态。因为只有 fork 能发起 Pull Request所以本地仓库与上游同步后最后再把改动推到自己的 fork。同步四步走# 1. 确保在主分支上git status 第一行可查看当前分支 git status git checkout main # 2. 把上游公共仓库注册为名为 upstream 的远程 git remote add upstream https://github.com/firstcontributions/first-contributions.git # 3. 拉取上游最新版本 git fetch upstream # 4. 把上游 main 合入你的本地 main 分支 git rebase upstream/main # 5. 推送到你的 fork名为 origin 的远程 git push origin main如果想一次性完成「拉取 合并」也可以直接用git pull upstream main建议在 GitHub 提示你的 fork「落后若干提交」a few commits behind时执行上述同步。四、把提交移动到另一个分支Moving a Commit to a Different Branch索引页简介指导如何把某条提交移动到另一个分支。适用场景是提交落错了分支需要将其迁移到正确的目标分支。英文母版见 moving-a-commit-to-a-different-branch.md。操作思路通常分两步先在原分支用git reset或git cherry-pick配合git log移除该提交再切换到目标分支将其应用到合适位置涉及已推送提交时还需注意远程历史的改写与强制推送风险。详细命令序列请查阅英文母版。五、删除文件Removing a File索引页简介指导如何从本地仓库删除文件适合在提交前学习如何移除文件。英文母版见 removing-a-file.md。核心命令为git rm filename连同工作区与暂存区一并删除随后提交即可或先用普通文件删除再git add记录删除。若文件已被提交过删除行为同样需要一次提交来固化。六、删除仓库中的分支Removing a Branch from Your Repository索引页简介指导如何删除仓库中的分支并特别强调只有在你的 Pull Request 被合并之后才应执行删除。英文母版见 removing-branch-from-your-repository.md。PR 合并后删除本地与远程分支是保持仓库整洁的惯例常用git branch -d branch与git push origin --delete branch。建议在合并后执行避免误删包含未合并工作的分支。七、解决合并冲突Resolving Merge Conflicts索引页简介指导排查并解决合并冲突——即那些「往往很烦人的合并问题」。英文母版见 resolving-merge-conflicts.md。当git merge或git rebase遇到双方修改同一处内容时Git 会在冲突文件中插入、、标记。解决流程为编辑文件保留正确内容 → 移除冲突标记 →git add→ 完成 merge 或 rebase。该主题与仓库中「先 fork 后贡献」的协作模式高度相关几乎每个活跃开源项目的贡献者都会遇到。八、回退已推送的提交Reverting a Commit索引页简介当你需要撤销已推送到远程GitHub的提交时使用。英文母版见 reverting-a-commit.md。与本地撤销不同对已推送的提交推荐用git revert生成一条反向提交而不是改写历史——这样不会破坏其他协作者基于该提交衍生的工作也不需要强制推送。git revert commit-hash会创建一条撤销该提交改动的新提交再正常推送即可。九、压缩提交Squashing Commits索引页简介教你如何把多条提交「压平」成一条典型场景是在开源项目发起 PR 后评审者要求把所有提交压缩成一条、并附带信息丰富的提交信息。英文母版见 squashing-commits.md。实现方式是用交互式变基git rebase -i HEAD~N在交互界面中把需要合并的提交标记为squash或s保存后按提示编写最终的合并提交信息。压缩后的历史更清晰也便于维护者 review。十、撤销本地提交Undoing a Commit索引页简介用于撤销本地仓库中的提交——当你觉得本地仓库被改乱了、希望回到之前的状态时使用。英文母版见 undoing-a-commit.md。本地撤销常用git reset配合--soft保留改动在暂存区、--mixed保留改动在工作区与--hard连同改动一并丢弃三种模式使用。因为尚未推送改写本地历史没有协作风险是安全的重来手段。十一、进一步学习的有用链接Useful Links for Further Learning索引页简介该页专门汇集各类技巧站点、博客与实用网站无论初学者还是专家都能从中受益是开源新人或想深入者获取帮助的「链接索引」。英文母版见 Useful-links-for-further-learning.md。first-contributions 项目本身也把「如何贡献开源项目」的方法沉淀在 docs/how-to-contribute-to-open-source-projects.md可与本索引互为补充。十二、创建 .gitignore 文件Creating a .gitignore File索引页简介解释.gitignore的作用、为什么要用、如何创建。它几乎出现在所有 Git 项目中帮助 Git 只把必要的文件纳入提交。英文母版见 creating-a-gitignore-file.md。.gitignore中每行是一条忽略规则可匹配文件、目录或通配模式如*.log、node_modules/。合理的.gitignore能避免把构建产物、依赖目录、本地配置等无关文件误提交进仓库这正是 first-contributions 这类需要保持仓库整洁的开源项目所看重的实践。如何在仓库中继续深入尼泊尔语翻译现状docs/additional-material/translations/Nepali/目录下目前可读的尼泊尔语文档为 amending-a-commit.np.md 与 configuring-git.np.md其余条目可对照英文母版阅读。英文母版全集位于 docs/additional-material/git_workflow_scenarios覆盖索引中全部 12 个主题每条都包含完整命令序列与注意事项。更多语言索引docs/additional-material/translations/下按语言分目录组织中文读者可参考 additional-material.zh-cn.md 等同主题翻译。入门教程若尚未完成基础流程先阅读仓库根目录 README.md 及 Contributors.md再回到本文所述的高级技巧清单。总而言之这份尼泊尔语索引页虽然篇幅精炼却是通往整套高级 Git 实战技能的地图它明确了每个进阶主题「何时用、为何用」而配套的英文母版与首批尼泊尔语翻译则提供了可照抄执行的命令与注意事项。对任何语言的初学者而言先定位场景、再按索引跳转查阅是最高效的进阶路径。【免费下载链接】first-contributions✨ Help beginners to contribute to open source projects项目地址: https://gitcode.com/gh_mirrors/fi/first-contributions创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表