
文档教程【免费下载链接】training-kitOpen source courseware for Git and GitHub项目地址https://gitcode.com/gh_mirrors/tr/training-kit点击查看免费下载本指南以 GitHub Training Kit 开源课程仓库training-kit中的多语言 Git 速查表为骨架系统讲解从 Git 安装、首次配置、创建仓库到日常变更、分支管理、历史审查与远程同步的完整命令体系。读完本文你将掌握一套可直接复制的 Git 命令行工作流并能理解这些命令在仓库源码教程git-guides系列与高级速查表中的扩展用法。速查表在仓库中的定位本仓库是 GitHub Professional Services 团队维护的开源课程资料见 README.md其核心交付物之一便是多语言 Git/GitHub 速查表。本次解析的关联文档位于 downloads/sk/github-git-cheat-sheet.md是完整的斯洛伐克语sk翻译版其英文母版为 downloads/github-git-cheat-sheet.md。所有语言版本的速查表都通过 Jekyll 渲染为页面front matter 中声明了layout: cheat-sheet该布局_layouts/cheat-sheet.html将页面内容按col-md-6双栏栅格排版配合capture分栏语法实现左安装配置、右日常操作的快速查阅体验。这意味着速查表本身就被设计为面向终端的快速参考卡本文在此基础上逐条展开命令的语义、参数与底层原理。Git 安装从桌面客户端到命令行速查表将安装环节分为两条路径对应不同使用习惯GitHub DesktopWindows 与 macOSGitHub 官方桌面应用覆盖最常见的仓库操作克隆、提交、推送适合不常使用终端的用户。Git for All PlatformsGit 官方发行版适用于 Linux、POSIX 系统及所有需要完整命令行能力的平台即速查表原文强调的针对更复杂场景的命令行接口。安装完成后可通过仓库配套指南 git-guides/install-git.md 验证安装并在终端输入git --version确认版本。注意速查表面向命令行因此后续所有示例均以终端中的git命令形式给出。首次配置让每一次提交都有署名在开始提交之前需要先配置本机用户信息速查表给出三个核心配置命令$ git config --global user.name [meno]设置提交commit上要显示的作者姓名。$ git config --global user.email [email]设置提交上关联的作者邮箱。$ git config --global color.ui auto启用命令行输出的彩色高亮便于区分分支、文件状态与冲突标记。--global表示配置写入用户级配置文件Linux 下为~/.gitconfig对所有本地仓库生效。这两个身份信息会以元数据形式记录进每一次 commit仓库配套教程 git-guides/git-commit.md 明确指出提交不仅包含内容与消息还包含作者、时间戳等大量元数据——这正是user.name/user.email的落点。若未配置Git 会拒绝提交并给出提示。创建仓库init、clone 与关联远程速查表给出两条创建仓库的路径$ git init [nazov-projektu]在当前目录或指定项目名目录初始化一个全新的本地 Git 仓库。$ git clone [url]从给定 URL 完整下载一个已存在的仓库包含全部文件、分支与提交历史。英文母版在此基础上补充了本地初始化后与 GitHub 关联的关键一步本地 init 的仓库必须手动绑定远程仓库后才能推送$ git remote add origin [url]该命令为本地仓库指定远程仓库地址origin是约定的默认远程名URL 指向 GitHub 上的仓库。对应细节可参考 git-guides/git-remote.md 与 git-guides/git-clone.md后者专门讲解 clone 与手动 init remote 两种方式的取舍。初始化本地仓库后用git remote -v可随时查看已绑定的远程列表。做出更改暂存区驱动的提交工作流速查表给出日常修改文件时最常用的六个命令构成了 Git 的核心工作循环$ git status列出工作区中所有新增或修改的文件并提示当前所在分支。它是每次操作前确认状态的安全网git-guides/git-status.md 对其有专门讲解。$ git diff显示尚未暂存stage的文件改动差异即工作区与暂存区之间的对比。$ git add [subor]将指定文件加入暂存区为下一次提交做好准备。$ git diff --staged显示已暂存内容与上一次提交版本之间的差异即暂存区与 HEAD 的对比。$ git reset [subor]将文件移出暂存区unstage但保留工作区中的内容修改是撤销git add的标准做法。$ git commit -m[vystizny-opis-zmien]把暂存区的快照永久写入版本历史并附上描述性提交消息。仓库教程 git-guides/git-add.md 对这一工作流有深入剖析git add与git commit必须配合使用git add的核心价值在于在不改变工作方式的前提下塑造历史——你可以在同一个文件中只暂存部分改动git add -p交互式分段暂存让每次提交成为逻辑原子单元。该教程还对比了三种批量暂存方式命令新增文件修改文件删除文件含点开头文件当前目录上层目录git add -A是是是是是是git add .是是是是是否git add -u否是是是是是并警告批量暂存虽省时但可能误将大体积二进制文件或含密码、令牌的敏感文件提交进历史因此始终要知道自己暂存了什么。提交消息方面git-guides/git-commit.md 建议使用现在时、祈使句的短描述如git commit -m update the README to include links to contributing guide让日志本身讲述仓库演变的故事不带-m时会打开默认编辑器撰写多行消息。分支与合并分组变更、组合进度分支是 Git 协作的基石速查表列出四个核心命令$ git branch列出仓库中所有本地分支。$ git branch [nazov-vetvy]从当前 HEAD 位置创建一条新分支。$ git switch -c [nazov-vetvy]创建并切换到新分支同时更新工作目录中的文件。$ git merge [nazov-vetvy]将指定分支的历史合并进当前所在分支。$ git branch -d [nazov-vetvy]删除指定分支。英文母版特别强调你在分支上做的每一次提交都会落在当前 checkout 的分支上因此提交前用git status确认所在分支至关重要。母版还指出git merge通常发生在 Pull Request 中但它是 Git 最重要的底层操作之一。关于git switch它是较新的、语义更聚焦的分支切换命令取代了旧式git checkout -b的混合职责。术语表见下文中说明HEAD指针代表当前工作目录状态可通过git switch在不同分支、标签或提交之间移动。分支机制的核心价值正如 git-guides/git-overview.md 所总结的分支廉价、轻量开发者可以在安全的沙箱中修改代码再推送到远程获取集成测试与同行评审的反馈。移动文件删除、解除跟踪与重命名$ git rm [subor]从工作目录删除文件并把这个删除操作记录到暂存区等待提交。$ git rm --cached [subor]仅将文件移出版本控制停止跟踪但保留本地文件。典型场景是某文件此前被误提交现在希望它留在磁盘上、却不再纳入版本库。$ git mv [originalny-subor] [premenovany-subor]重命名文件并自动暂存该改动使 Git 能识别重命名而非删除新增。这三条命令与git status、git add组合可完整管理受版本控制文件的生命周期尤其git rm --cached常与.gitignore搭配使用见下节用于停止跟踪但不删除。忽略文件.gitignore 与忽略清单查看速查表给出一个典型.gitignore内容示例*.log build/ temp-*并解释名为.gitignore的文本文件用于排除不想纳入版本控制的文件或目录常见如 IDE 配置文件、密码文件、临时产物。其规则语法基础*.log忽略所有.log结尾的文件通配符模式build/忽略整个build目录temp-*忽略所有以temp-开头的文件。英文母版补充gitignore模板可从 GitHub 官方 gitignore 仓库获取仓库原文链接指向 github.com/github/gitignore。查看当前项目中所有被忽略文件的命令$ git ls-files --others --ignored --exclude-standard--others列出未被跟踪的文件--ignored过滤出其中被忽略的部分--exclude-standard让命令同时尊重标准忽略规则.gitignore、.git/info/exclude及全局 ignore 文件。此命令在排查某个文件为什么没被提交时非常实用。暂存未完成的工作git stash 四件套当需要临时切换分支、但手头工作尚未完成时git stash系列命令可暂存工作区的改动$ git stash将所有已修改的文件临时保存到一个 stash 栈中工作区恢复干净。$ git stash pop恢复最近一次 stash 的改动并将其从栈中移除。$ git stash list列出当前所有已暂存的改动条目。$ git stash drop丢弃最近一次 stash 的改动。速查表之外仓库的 downloads/github-git-advanced-cheat-sheet.md 将 stash 命令族进一步扩展适合需要精细控制 stash 栈的场景git stash save stash name为当前改动命名保存存入栈顶git stash drop stash{n}丢弃栈中第 n 条 stashgit stash pop stash{n}应用第 n 条 stash 并从列表删除git stash apply stash{n}应用第 n 条 stash 但保留在列表中git restore --sourcestash{0} filename从某条 stash 中把单个文件恢复到工作区。审查历史log、diff 与 show$ git log列出当前分支的提交历史按时间倒序。$ git log --follow [subor]列出指定文件的完整变更历史包含重命名之前的记录仅适用于单个文件。$ git diff [jedna-vetva]...[druha-vetva]对比两个分支之间的内容差异三点语法...表示以第一个分支为基准比较其与第二个分支的共同祖先之后的差异。$ git show [commit]输出指定提交的元数据作者、时间、消息与内容变更详情。高级速查表还提供了一个美化日志的常用变体git log --prettyoneline让每次提交压缩为单行展示适合快速浏览长历史。配套教程 git-guides/git-commit.md 补充了git reflog的概念它是 HEAD 曾经指向过的所有提交的日志在误用git reset丢失提交后可借助 reflog 找回。回退更改reset 的软硬两面$ git reset [commit]撤销[commit]之后的所有提交但保留这些改动于本地工作区相当于默认的--mixed模式提交被撤销、暂存区被清空、文件内容保留。$ git reset --hard [commit]完全丢弃[commit]之后的所有提交与改动工作区强制回到指定提交的状态。英文母版对此给出了醒目警告CAUTION改写历史可能产生严重副作用。如果目标提交已经推送到 GitHub 远程重置后会与协作者的本地历史产生分叉强行推送可能干扰团队协作。安全做法是仅对尚未推送的本地提交使用git reset对已推送的提交优先使用git revert生成一个反向提交来抵消变更不破坏历史完整性git-guides/git-commit.md 明确将git revert列为尽可能时改写历史的首选方式使用git reset前先通过git reflog确认可恢复的提交因为未提交的工作一旦丢弃无法找回。同步更改fetch、merge、push、pull$ git fetch [remote]从指定远程下载所有变更与历史到本地仓库仅更新远程跟踪分支不触碰工作区。$ git merge [remote]/[branch]将远程跟踪分支合并进当前分支。$ git push [remote] [branch]将本地提交上传到 GitHub 上对应远程分支。$ git pull拉取远程最新变更并合并进当前工作分支。英文母版明确指出git pull本质上是git fetch与git merge的组合。首次推送新本地分支时使用git push -u origin [branch-name]建立本地分支与远程分支的跟踪关系见 git-guides/git-push.md若推送被拒绝远程有新提交应先git pull合并或解决冲突后重试。完整的分布式协作流程创建分支 → 提交 → 推送 → 开 Pull Request → 评审合并见 git-guides/git-overview.md。核心术语表英文母版附录的术语表是理解整个速查表的钥匙整理如下git开源的分布式版本控制系统GitHub基于 Git 的仓库托管与协作平台commit一个 Git 对象是整个仓库某一时刻的快照被压缩为 SHA 哈希值branch指向某个提交的轻量可移动指针clone仓库的本地副本包含全部提交与分支remote团队成员共享、用于交换变更的公共仓库通常托管在 GitHubforkGitHub 上由不同用户拥有的仓库副本pull request比较并讨论某个分支引入差异的地方支持评审、评论、集成测试等HEAD代表当前工作目录状态的指针可通过git switch移动到不同分支、标签或提交。理解commit 是 SHA 快照、branch 是指针、HEAD 是当前位置这组模型后switch、merge、reset等命令的行为就变得非常直观。仓库教程 git-guides/git-overview.md 还补充了 Git 的底层特性Git 以 SHA 哈希压缩文本文件存储内容因此非常适合软件源码但对图片、视频等二进制文件不友好同时提交不可变改写历史只会创建新的替代提交这正是reset/revert能安全回滚的基础。在 training-kit 中继续深入速查表是入门索引仓库中还有三类资源可深入git-guides 系列对单个命令展开完整教程包括 git-add.md、git-commit.md、git-clone.md、git-push.md、git-pull.md、git-remote.md、git-status.md、git-init.md、install-git.md 等均可在仓库内直接阅读。高级速查表downloads/github-git-advanced-cheat-sheet.md覆盖合并中止git merge --abort、命名 stash、按索引操作 stash、git restore .丢弃全部改动、从 stash 恢复单个文件、应用补丁git apply等进阶操作是本文第 8 节 stash 部分的自然延伸。本地构建如需离线查看渲染后的站点README.md 提供了打包方案——运行script/package生成发布压缩包解压后用python -m http.server即可在防火墙内网浏览全部速查表页面。需要注意的是速查表命令均基于命令行假设Windows 用户可通过 Git Bash 获得与 Linux/macOS 一致的行为文中涉及git switch、git restore等较新命令时建议使用 Git 2.23 及以上版本以获取完整支持。赞分享文档教程【免费下载链接】training-kitOpen source courseware for Git and GitHub项目地址https://gitcode.com/gh_mirrors/tr/training-kit点击查看免费下载相关推荐GitHub Training Kit 之 Bash 速查表深度解析从安装配置到系统任务的一站式命令行指南GitHub Training Kit 之 Bash 速查表深度解析从安装配置到系统任务的一站式命令行指南 BashBourne Again SHell是文档教程GitHub Training Kit与GitHub Desktop的协同使用终极Git学习指南GitHub Training Kit与GitHub Desktop的协同使用终极Git学习指南 GitHub Training Kit是一个开源的学习资源库文档教程19GB实现95%性能保留Qwen3-32B-AWQ如何开启大模型普惠时代19GB实现95%性能保留Qwen3 32B AWQ如何开启大模型普惠时代 导语 阿里巴巴通义千问团队推出的Qwen3 32B AWQ量化模型通过4位AWQ文档教程上一篇browser-harness 实战Expedia 酒店搜索的 URL 优先自动化策略下一篇突破Kotlin插件调试困境2.2版本IDE集成与断点调试全指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考