课程 1 · 基础
区分 Git、GitTree 和您的托管提供商
了解哪一个工具保存历史记录,哪一个提供桌面工作流程,以及哪一个运行托管服务。您将在尚未创建课程存储库的情况下检查 Git 和 GitTree。
- 级别: 初学者
- 阅读 2 分钟
- 4 分钟的视频
- 已更新
- 在这节课之前: 无需提前上课
进度已保存在此浏览器中。
播放时会加载来自 YouTube 的视频(隐私增强模式)。
你将学到什么
- 解释为什么 Git 本身会在没有 GitHub、GitLab 或 GitTree 帐户的情况下记录本地提交。
- 将原生 Git 与仅 GitTree 和依赖于提供商的功能区分开来。
- 读取缺少存储库的消息,而不将其视为缺少 Git。
- 确定这次介绍性检查改变了什么以及没有改变什么。
开始之前
从 no course repository 开始:尚未初始化任何内容。不要打开本课程的工作存储库。您将在第 4 课中创建课程存储库。
终端示例已在 macOS 和 Ubuntu 24.04 上使用 Git 2.52.0 检查。您的版本行可能有所不同;第 2 课解释了安装和 GitTree 的 Git 2.39.0 最低要求。另一个 shell 的错误格式可能略有不同。 GitTree 步骤记录在 Ubuntu 24.04 的 GitTree 1.4 中。在 macOS 上,按 Command 和 Option,其中 Windows 和 Linux 使用 Ctrl 和 Alt。
Native Git 不需要帐户即可进行本地工作。 GitTree 要求您使用电子邮件或 Git 提供商登录;然后,免费计划涵盖了每个本地 Git 功能,并且您的存储库保留在您的计算机上。该视频是在需要登录之前录制的,因此不会显示该对话框。执行 Nour、提供商集成和 AI 起草需要 Pro 或适用的试用版。阅读本课程并不授予提供者权限。
概念
想象一个项目,其工作文件包含登陆页面标题。 Git 可以记录提交:快照及其与之前历史记录的关系。它在本地存储存储库数据。提供者帐户不是该本地历史记录的先决条件。
GitTree 是 macOS、Windows 和 Linux 上的 Git 桌面客户端。它显示存储库状态并将所选操作发送到用户安装的 Git。它还具有特定于应用程序的状态,例如工作区、首选项及其自己的撤消日志。这些功能不会将 GitTree 转变为托管服务器。
A hosting provider 存储远程存储库,并可以提供审核对象、问题和 CI 服务。在本课程中,主要 CI/CD 录制使用 GitLab 和作者计算机上本地的运行程序。 GitTree 可以检查支持的提供程序结果;跑步者执行作业。
可以做一个类比:Git 保留项目的记录版本,GitTree 是用于检查和更改它们的工作台,而主机是具有自己规则的共享服务。这个类比仅限于权限和恢复:本地工作台不会自动反转服务器接受的操作。
阅读后面的课程时使用三个标签:
| 标签 | 示例 | 权威 |
|---|---|---|
| 原生 Git | 暂存文件或创建本地提交 | Git 读取的存储库/索引/引用 |
| 仅 GitTree | 更改应用程序首选项或使用其日志撤消 | GitTree的实际应用状态和记录的操作 |
| 依赖于提供商 | 查看合并请求或检查管道作业 | 选定的提供商/项目/权限和应用程序功能 |
GitLab 将其审核对象称为合并请求; GitTree 的共享命令可以说 Pull Request。本机合并是一种不同的操作。我们将在第 61 课中具体阐述这一区别。
本课中的状态变化
目前还没有课程工作树、索引、本地分支或远程跟踪参考。终端检查没有发现任何问题。打开新选项卡并阅读指南不会初始化存储库或推送任何内容。关闭功能指南可以更新其应用程序本地最近看到的版本首选项;这与存储库状态是分开的。
不要从通用功能名称推断提供者的功能。服务可能会提供 GitTree 的适配器当前未公开的 API 操作。
| 工具 | 它拥有什么 | 示例 |
|---|---|---|
| git | 本地存储库历史记录 | 暂存文件,创建本地提交 |
| GitTree | 桌面工作流程和应用程序状态 | 更改首选项,使用 GitTree 撤消 |
| 托管服务提供商 | 远程存储库和托管服务 | 检查合并请求,运行管道作业 |
在航站楼
运行此只读版本查询:
git --version在创作机器上观察到的输出:
git version 2.52.0它证明这个 shell 可以找到 Git 并报告该可执行文件的版本。它并不证明存储库、GitTree 安装或提供程序连接存在。
在 not 存储库的文件夹中,检查状态:
git status --short从非存储库创作文件夹观察到的输出:
fatal: not a git repository (or any of the parent directories): .git该命令以非零值退出。这是预期的负面情况:Git 已运行,但该文件夹没有存储库上下文。不要仅仅为了删除此消息而运行 Init;第 4 课创建预期的课程文件夹。
要检查 Git 自己的命令目录:
git help --all --no-aliases --no-external-commands捕获的 Git 2.52.0 输出的精确摘录(视频添加 | head -12 以仅显示第一行):
Main Porcelain Commands
add Add file contents to the index
am Apply a series of patches from a mailbox
archive Create an archive of files from a named tree
backfill Download missing objects in a partial clone这是带标签的摘录,而不是整个输出。规范化的捕获目录有 170 个内置命令/界面条目。列出的手册、帮助程序或可选工具不会自动成为 GitTree 按钮。
在GitTree
- 打开应用程序并选择 New Tab,命令
tab.new。默认快捷键:macOS 上的 Command+T、Windows/Linux 上的 Ctrl+T。期待存储库打开屏幕;什么也不创造。 - 使用 Command+Shift+P 或 Ctrl+Shift+P 打开 Command Palette…、命令
palette.open。输入 Feature Guide,然后选择准确的 Feature Guide 结果。期待 Feature Guide 表。 - 替代条目:Alt+H 直接打开 Feature Guide;在 macOS 上,这是 Option+H。默认快捷方式可以自定义,因此请检查实时快捷方式帮助(如果有不同)。
- 选择Features。在 Search features 中,输入 CI/CD 并检查命名的 CI/CD runs 卡。在没有打开存储库的情况下,其源定义的先决条件消息为 Open a repository to use it. 描述并不是作业已运行的证据。
- 选择Integrations。如果没有打开存储库,预计会出现 Open a repository to see what its provider supports. 不要在本课程中连接帐户或创建远程帐户。
- 按 Escape 关闭指南并恢复焦点。保持新标签页打开。由于我们尚未创建项目,因此存储库图仍然不存在。
结果
您可以为每个操作的所有者命名:Git(表示本地版本历史记录)、GitTree(表示其桌面工作流程/应用程序状态)以及提供者/运行者(表示托管审核和 CI)。该课程仍然没有存储库或图表:您完全从开始的地方结束,现在知道谁拥有什么。
常见错误
- “Commit means upload.” 本地提交记录存储库历史记录。推送是一个单独的操作,通过远程身份和许可进行教授。
- “GitTree account means provider access.” 作者身份、应用访问权限和提供商凭据是独立的。
- “A feature card proves support everywhere.”阅读其实际存储库、访问权限和提供商条件。
- “A passing pipeline proves my current files.” 一次运行标识特定的提交;未提交的文件和较新的 SHA 需要自己的检查。
如果出现问题
如果 shell 找不到 Git,请停止终端部分并按照第 2 课进行操作。上面的丢失存储库错误有所不同:Git 存在,但当前文件夹不是存储库。
如果找不到功能指南,请打开 Command Palette… 并输入 Feature Guide。较旧的 GitTree 可能还没有;本课的想法并不依赖于它。
如果您意外打开了个人存储库,请在发生任何更改之前停止。打开或关闭选项卡不会删除其存储库;检查未保存的编辑器提示而不是丢弃缓冲区。本课程不需要重置、丢弃、垃圾恢复或撤消。
检查你的理解情况
回答每个问题,然后阅读原因。标记为“必填”的问题将有助于完成本课程。
0 个(共 6 个)正确
正确回答所需的问题以完成课程。
在此浏览器中检查。
练习
在不初始化任何内容的情况下,使用三个标签进行分类:编辑应用程序主题、记录本地提交和运行程序执行作业。然后检查“新选项卡”并确认尚不存在 GitTree 功能图。可观察到的结果是正确的分类加上未更改的无存储库检查点。
您自己的确认:该网站无法看到您的计算机。
要完成本课程,请正确回答所需的问题并确认实践练习。
回顾
- Git 独立于托管帐户记录本地历史记录。
- GitTree 的应用程序状态和本机 Git 存储库状态具有不同的所有者。
- 提供商的能力、权限和实际运行身份决定连接结果。
有关的
术语表介绍
存储库 — 存储库;提交 — 详细信息;工作树 — ????????????集结区 — 阿尔及利亚; ref—— 参考;供应商 — فّّ;命令调色板 — ?????????
视频文字记录
视频的旁白,逐条提示。
显示成绩单
- 欢迎来到GitTree学习。建一个小 名为 GitTree 功能的页面。
- 创建之前,先将三个工具分开 经常在一起讨论。
- Git 记录历史。 GitTree 是一个 工作区。提供商添加服务。
- Maya 编辑标题。她的工作档案是 磁盘上的当前版本。
- Git 可以保存选定的快照 链接到以前的历史记录。
- 本地提交不需要 GitHub、GitLab 或 GitTree 帐户。
- 这不会保存每个可见文件或 上传任何东西。
- 我们稍后将检查选定的内容。 推送是一个单独的操作。
- GitTree 显示历史记录和操作 Git 安装在您的计算机上。
- 应用程序首选项和工作区不同 分支和提交。
- GitTree 支持撤消记录的应用程序 操作,并非每个终端都发生变化。
- 主人有一个遥控器,并可能提供 评论、问题和检查。
- 我们的主管道使用 GitLab 和一个运行器 在作者的本地机器上。
- 运行者执行作业。 GitTree 检查 支持的结果。
- 服务功能不会自动 由GitTree的适配器实现。
- 阅读提供商、项目、许可、 并在每个结果背后做出承诺。
- 运行 git --version。此查询发生变化 没有存储库。
- 这里 Git 报告 2.52.0。 您的版本可能有所不同。
- 这证明shell找到了Git,而不是 提供商已连接。
- 在没有存储库的文件夹中,运行 git status --短。
- Git 说这不是存储库。那 预期结果为阴性。
- 缺少存储库上下文不同于 缺少 Git。阅读消息。
- 请勿重置、清理或初始化 随机文件夹来隐藏它。
- 本机命令目录不是列表 GitTree 个按钮。
- 在 GitTree 中打开新标签。不要创建 课程存储库尚未。
- 打开命令面板,搜索功能 引导,然后选择该命令。
- 默认为 Alt+H,或 Option+H macOS。覆盖可以改变它。
- 选择Features,搜索CI/CD,然后阅读 CI/CD 运行先决条件。
- 如果没有开放的存储库,该功能 要求您打开一个。
- 选择Integrations。它还要求一个 在显示支持之前存储库。
- 阅读帮助创建无远程,已连接 帐户或管道作业。
- 按退出键。导游可以记住它的 版本作为应用程序首选项。
- 该偏好不会创建任何提交。的 项目仍然没有图表。
- 本地 Git 是免费的。 Nour、集成以及 草稿需要适用的访问权限。
- 应用程序访问、提供商凭据以及 提交身份保持独立。
- 一份传递的工作属于一次提交。安 旧的绿色 SHA 还不够。
- 对主题更改、本地提交进行分类, 和执行作业的跑步者。
- 确认课程项目仍然存在 未初始化,未上传。
- Git 拥有历史记录,GitTree 它的工作区, 及其服务的提供者。
- 接下来,检查安装和身份。 在第四课中创建存储库。