Skip to content

第一次使用 Git:先把工具和身份准备好 ​

什么时候需要这一课 ​

  • 你从来没有在这台电脑运行过 Git。
  • 输入 git 后出现 command not found。
  • Commit 时出现 Please tell me who you are。
  • Clone 公共项目成功,Push 时却突然要求登录。

这些问题不代表项目代码坏了,只说明 Git 工具或账号认证还没准备好。

先认识四样东西 ​

Git ​

安装在电脑上的版本管理工具。终端里的 git status、git commit 都由它执行。

GitHub 账号 ​

你登录 GitHub 网站时使用的账号。它决定你能查看哪些私有仓库、能向哪些仓库 Push。

终端 ​

输入 Git 命令的窗口。终端本身不是 Git。

编辑器 ​

修改文件的地方,例如 VS Code、Cursor。保存文件也不等于已经 Commit。

第一步:检查电脑有没有 Git ​

打开终端,输入:

bash
git --version

成功时会显示类似:

text
git version 2.50.1

数字不必和示例完全相同。只要能显示版本,而不是 command not found,就说明终端找到了 Git。

如果没有安装,按照GitHub 官方 Set up Git 指南选择你当前系统的安装方法。不要从陌生网盘下载所谓“Git 安装包”。

第二步:配置 Commit 上显示的姓名 ​

Git 每次 Commit 都要记录是谁创建的。第一次配置:

bash
git config --global user.name "你的显示名称"

例如:

bash
git config --global user.name "Hanyue"

--global 表示这台电脑上的其他 Git 项目也默认使用这个名字。它不负责登录 GitHub。

第三步:配置 Commit 邮箱 ​

bash
git config --global user.email "你的提交邮箱"

这个邮箱用于把 Commit 和 GitHub 账号关联。你可以使用 GitHub 账号设置中提供的隐私邮箱,避免在公开提交中暴露个人邮箱。

不要照抄示例里的假邮箱。去 GitHub 的 Email 设置查看自己当前应该使用的地址。

第四步:检查配置是否写对 ​

bash
git config --global user.name
git config --global user.email

终端应该分别显示刚才填写的姓名和邮箱。

如果拼错,重新运行配置命令会覆盖旧值。

为什么 Clone 不登录也行,Push 却要认证 ​

Clone 公共仓库 ​

只是读取公开内容,所以通常不要求证明身份。

Push 到远程仓库 ​

会修改远程内容,GitHub 必须确认你是谁、有没有权限。

text
读取公开仓库     像进入公开图书馆阅读
Push 修改仓库    像进入库房改档案,必须刷门卡

HTTPS 和 SSH 先选哪个 ​

HTTPS ​

仓库地址类似:

text
https://github.com/owner/project.git

适合第一次使用。Push 时可能打开浏览器登录,或由系统的凭据管理工具保存认证信息。

SSH ​

仓库地址类似:

text
git@github.com:owner/project.git

使用电脑上的 SSH 密钥证明身份,适合已经理解公钥和私钥的人。

初学时不需要两种都配置。先让一种方式完整成功,再学习另一种。

认证时不要做的事 ​

  • 不要把 GitHub 密码直接写进命令。
  • 不要把 Personal Access Token、SSH 私钥发到聊天或截图。
  • 不要把密钥文件放进项目再 Commit。
  • 不要因为 Push 失败就把仓库改成公开。

如果认证界面和教程不同,优先查看GitHub 官方认证文档,因为登录方式可能更新。

准备完成的检查表 ​

text
Git 能显示版本                 完成
user.name 能显示正确姓名       完成
user.email 能显示正确邮箱      完成
知道 Clone 公共仓库是读取       完成
知道 Push 需要账号权限          完成
知道不能公开 Token 和私钥       完成
git config user.name 已经设置成功,是否代表你已经登录 GitHub?

答案:不是。user.name 只是写进 Commit 的作者信息;登录和 Push 权限由 GitHub 的 HTTPS 或 SSH 认证另外决定。

写给想驾驭 AI,而不只是依赖 AI 的 Vibe Coder。