保护您的 Git 工作流
学习保护 Git 仓库的最佳实践,包括安全存储凭据和管理 SSH 密钥。
保护您的 Git 工作流 是 CoddyKit 上的免费 Git & GitHub Professional Workflow 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Git & GitHub Professional Workflow 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Git & GitHub Professional Workflow 课程共包含 4 节课。
保护您的代码!
Git 仓库存储着您宝贵的代码、知识产权和项目历史记录。未经授权的访问可能导致数据泄露、恶意修改或知识产权被窃取。
保护 Git 工作流程至关重要。这不仅关系到保护您的个人项目,也关系到保护团队协作免受潜在威胁。
Git 身份验证方法
当您与远程 Git 仓库(例如 GitHub、GitLab 或 Bitbucket 上的仓库)交互时,Git 需要验证您的身份。主要有两种身份验证方法:
- HTTPS:使用您的用户名以及密码或个人访问令牌(PAT)。
- SSH:使用一对加密密钥(公钥和私钥)进行安全通信。
这两种方法都能提供安全性,但 SSH 通常更受欢迎,因为它使用方便且具备强大的安全功能。
使用个人访问令牌进行 HTTPS 身份验证
不建议在通过 HTTPS 使用 Git 时使用您的普通账户密码,尤其是在启用了双重身份验证(2FA)的情况下。请改用个人访问令牌(PAT)。
PAT 是一串较长的随机生成字符串,作用类似于具有特定有限权限的临时密码。您可以直接在 Git 托管服务(例如 GitHub、GitLab)上生成 PAT,并可随时撤销它们。
使用辅助工具存储凭据
每次推送或拉取时都输入 PAT 或密码,既烦琐又会打断工作流程。Git 提供了凭据辅助工具,用于安全地存储您的身份验证信息。
这些辅助工具会与操作系统的安全凭据管理器集成(例如 macOS 上的钥匙串或 Windows 上的凭据管理器)。这样,您只需输入一次凭据,Git 就会安全地记住它们。
配置凭据辅助工具
要让 Git 使用凭据辅助工具,您需要使用 git config 命令。具体使用哪个辅助工具取决于您的操作系统:
在 macOS 上,请使用 osxkeychain 辅助工具:
git config --global credential.helper osxkeychainSSH 密钥简介
SSH(安全外壳)密钥为远程 Git 仓库提供了一种高度安全且便捷的身份验证方式。它依赖一对加密密钥:
- 您的公钥可以与 Git 托管服务共享。
- 您的私钥必须在本地计算机上保密并妥善保存。
连接时,该服务会使用您的公钥验证您是否持有匹配的私钥,验证通过后授予您访问权限。
生成 SSH 密钥对
您可以在终端中使用 ssh-keygen 命令生成新的 SSH 密钥对。该命令会提示您选择保存密钥的位置并设置密码短语。
请始终使用强密码短语来保护您的私钥。即使有人获得了对您计算机的访问权限,这也能增加一层额外的安全保护。
ssh-keygen -t ed25519 -C "your_email@example.com"将 SSH 密钥添加到 SSH 代理
SSH 代理是一种将私钥保存在内存中的程序,这样您每次使用密钥时就不必输入密码短语。请启动代理并添加您的密钥:
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519将公钥添加到 GitHub
现在,您需要将 SSH 公钥添加到 Git 托管服务(例如 GitHub、GitLab)。这样,连接时该服务就会信任您的计算机。
- 复制公钥文件的内容(例如
~/.ssh/id_ed25519.pub)。 - 转到 GitHub 设置 > “SSH and GPG keys”。
- 点击“New SSH key”,将公钥粘贴到其中,并为其填写描述性标题。
使用 SSH 执行 Git 操作
设置 SSH 密钥并将其添加到 Git 托管服务后,您就可以使用仓库的 SSH URL,而不是 HTTPS,来克隆仓库并与其交互。
SSH URL 的格式示例为 git@github.com:username/repo.git。
git clone git@github.com:your_user/your_repo.git快速检查 Git 安全性
以下哪些做法是保护 Git 工作流程时推荐的最佳实践?
安全使用 Git!
在本课中,我们探讨了保护 Git 工作流程的重要做法。您学习了如何使用个人访问令牌进行 HTTPS 身份验证、配置凭据辅助工具,以及设置 SSH 密钥来实现可靠的身份验证。
请始终优先保护您的私钥和敏感数据。确保 Git 交互安全,可以保护您的代码和项目免受未经授权的访问及潜在漏洞的影响。
常见问题解答
「保护您的 Git 工作流」课时是免费的吗?
是的 — 「保护您的 Git 工作流」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Git & GitHub Professional Workflow 课程的其余内容,请升级到 CoddyKit PRO。 Git & GitHub Professional Workflow 课程共包含 4 节课。
「保护您的 Git 工作流」这节课中我会学到什么?
学习保护 Git 仓库的最佳实践,包括安全存储凭据和管理 SSH 密钥。 你通过在浏览器中直接运行的动手代码来练习 Git & GitHub Professional Workflow,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Git & GitHub Professional Workflow 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Git & GitHub Professional Workflow 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。
「保护您的 Git 工作流」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Git & GitHub Professional Workflow 课中编写并运行代码吗?
能。每节 Git & GitHub Professional Workflow 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- 保护您的 Git 工作流
- 处理敏感数据(Git LFS)
- 提交信息最佳实践
- 使用 GPG 签署提交与标签